C# 按WinC窗体分组后计算行数的SQL命令
我有一个名为OrderId,Number,Date的表。 Id和编号是主键 表顺序C# 按WinC窗体分组后计算行数的SQL命令,c#,sql,sql-server,group-by,C#,Sql,Sql Server,Group By,我有一个名为OrderId,Number,Date的表。 Id和编号是主键 表顺序 Id Number Date 0 1 1995 0 2 1995 0 3 1995 1 1 1999 1 2 1999 2 1 2001 我需要行数,但在本例中没有重复:3 我知道Id组会给我:Id0,1,2 但我无法在分组后计算它。检查此项,它会返回您要查找的内容。它按数字分组,然后计算行的总数,在
Id Number Date
0 1 1995
0 2 1995
0 3 1995
1 1 1999
1 2 1999
2 1 2001
我需要行数,但在本例中没有重复:3
我知道Id组会给我:Id0,1,2
但我无法在分组后计算它。检查此项,它会返回您要查找的内容。它按数字分组,然后计算行的总数,在本例中为3行
select count(distinct id) from order
编辑
对不起,我看到你在按ID计数,修改了代码。然而,相同的逻辑只是不同的列
SELECT COUNT(*) Rows_count
FROM (
SELECT COUNT([Id]) count_rows
FROM tOrder
GROUP BY [Id]) AS T1
结果:
ROWS_COUNT
3
编辑
这段代码也确实有效,而且更短。如果您需要在GROUP BY之后添加HAVING子句,以防您希望计算或不计算某些特定值,那么我前面的一个子句会有所帮助
SELECT COUNT(DISTINCT id) FROM [Order]
选中此项,它将返回您要查找的内容。它按数字分组,然后计算行的总数,在本例中为3行
编辑
对不起,我看到你在按ID计数,修改了代码。然而,相同的逻辑只是不同的列
SELECT COUNT(*) Rows_count
FROM (
SELECT COUNT([Id]) count_rows
FROM tOrder
GROUP BY [Id]) AS T1
结果:
ROWS_COUNT
3
编辑
这段代码也确实有效,而且更短。如果您需要在GROUP BY之后添加HAVING子句,以防您希望计算或不计算某些特定值,那么我前面的一个子句会有所帮助
SELECT COUNT(DISTINCT id) FROM [Order]
试试这个:
从订单中选择DISTINCT COUNTId尝试以下操作:
从订单中选择DISTINCT COUNTId您是否查看此帖子?您需要具有唯一Id的行数吗?这就是你要找的吗?我找了很多方法,但都不管用,它总是给我一个错误或错误的行数。我只需要没有重复项的Id列,然后计算Id列的行数。你检查过这篇文章吗?您需要具有唯一Id的行数吗?这就是你要找的吗?我找了很多方法,但都不管用,它总是给我一个错误或错误的行数。我只需要没有重复的Id列,然后计算Id列的行数谢谢!很抱歉,上面的答案对我更合适是的,你是对的,请检查我的编辑。如果您需要筛选某些特定的值,例如,ID>1或alikethank,我的初始代码会有所帮助!很抱歉,上面的答案对我更合适是的,你是对的,请检查我的编辑。如果您需要过滤某些特定值,例如ID>1或类似值,我的初始代码会有所帮助