sqlserver根据一列中最大的字符串类型数查询另一列与最大值相对的字符串类型数
时间: 2024-05-11 22:17:24 浏览: 8
你可以使用以下 SQL 语句来实现:
```
SELECT column1, column2
FROM your_table
WHERE LEN(column1) = (
SELECT MAX(LEN(column1))
FROM your_table
)
AND column2 <> (
SELECT column2
FROM your_table
WHERE LEN(column1) = (
SELECT MAX(LEN(column1))
FROM your_table
)
)
```
其中,`your_table` 是你的表名,`column1` 和 `column2` 分别是你要查询的两列。这个 SQL 语句会先找出 `column1` 中最大的字符串类型数,然后使用 `LEN` 函数来判断每行的 `column1` 是否等于这个最大值。如果是,再判断 `column2` 是否与这个最大值对应的行的 `column2` 相等。如果不相等,则返回该行的 `column1` 和 `column2` 值。
相关问题
sqlserver根据第一列中最大的字符串类型数查询第二列与最大值相对的字符串类型数最后返回第二列的值
您好,根据您的描述,我理解您的意思是从一个表中查询出第一列中最大的字符串类型数,然后再查询出与最大值相对的字符串类型数所对应的第二列的值,是这样吗?
如果是的话,可以使用以下 SQL 语句:
```
SELECT TOP 1 column1, column2
FROM table
ORDER BY LEN(column1) DESC
SELECT TOP 1 column2
FROM table
WHERE LEN(column1) = (SELECT MAX(LEN(column1)) FROM table) - LEN(@max_column1)
```
其中,`table` 是您要查询的表名,`column1` 和 `column2` 分别是第一列和第二列的列名。第一条 SQL 语句用于查询第一列中最大的字符串类型数以及对应的第二列的值,第二条 SQL 语句用于查询与最大值相对的字符串类型数所对应的第二列的值。请将 `@max_column1` 替换为第一条 SQL 语句查询出来的最大字符串类型数的长度与相对数的长度之差。
希望能对您有所帮助!
sqlserver查询第二列与最大值相对的字符串类型数最后返回第二列的值根据第一列中最大的字符串类型数
你可以使用以下 SQL 查询来解决你的问题:
```
SELECT col2
FROM your_table
WHERE col1 = (
SELECT MAX(LEN(col2)) - LEN(col2)
FROM your_table
)
```
这个查询会找到第一列中最大的字符串类型数,然后计算出与它相对的最大字符串类型数,最后返回第二列中该字符串类型数对应的值。注意,这里假设你的表名为 `your_table`,第一列为 `col1`,第二列为 `col2`。