在 SQL 服务器中对游标使用不同的语句
Using a distinct statement over cursors in SQL Server
我有一个 table 具有以下内容:
目前我正在使用内部游标和外部游标遍历每个不同的(A 列)以获取每个不同的(B 列)值。
我很确定 SQL 中有更好的方法来执行此操作,但我仍然不能 100% 相信以下语句会给我结果:
select distinct(columnA), columnB from Table order by columnA
这能保证 (ColumnA,ColumnB) 的唯一值吗?
如果是这样,SQL 服务器是否在 ColumnA 和 columnB 上执行不同的操作,即使我只将它放在 columnA 上?我不必对其进行分组吗?
你不需要 CURSOR
。您想要的是 ColumnA
和 ColumnB
的独特组合。 DISTINCT
会为你做的。
SELECT DISTINCT ColumnA, ColumnB
FROM Table
ORDER BY ColumnA
DISTINCT将在SELECT
查询中的所有列上执行,不能放在单个列上。
你几乎在那里,只是做一个 distinct columnA, columnB from...
像这样:
select distinct columnA, columnB
from Table
order by columnA
我有一个 table 具有以下内容:
目前我正在使用内部游标和外部游标遍历每个不同的(A 列)以获取每个不同的(B 列)值。
我很确定 SQL 中有更好的方法来执行此操作,但我仍然不能 100% 相信以下语句会给我结果:
select distinct(columnA), columnB from Table order by columnA
这能保证 (ColumnA,ColumnB) 的唯一值吗?
如果是这样,SQL 服务器是否在 ColumnA 和 columnB 上执行不同的操作,即使我只将它放在 columnA 上?我不必对其进行分组吗?
你不需要 CURSOR
。您想要的是 ColumnA
和 ColumnB
的独特组合。 DISTINCT
会为你做的。
SELECT DISTINCT ColumnA, ColumnB
FROM Table
ORDER BY ColumnA
DISTINCT将在SELECT
查询中的所有列上执行,不能放在单个列上。
你几乎在那里,只是做一个 distinct columnA, columnB from...
像这样:
select distinct columnA, columnB
from Table
order by columnA