我是 SQL SERVER 新手,需要您的建议。
我有一张大桌子,上面有商店信息。这是 bench_id 列:
**bench_id**
31
51
51
61
61
61
71
71
我创建了另一个包含两列的小表:
**distinct_bench** **number**
-----------------------------
31 1
51 2
61 3
71 2
第二个表的 NUMBER 列显示 bench_id 出现的次数。
我试过这段代码:
insert into [dbo].BATCH_ID (batch_id, number)
select
distinct [dbo].big_table.batch_id,
(select count([dbo].big_table.batch_id) from [dbo].big_table)
from [dbo].big_table
但无法得到我期望的 bench_id 出现次数的正确答案。
你能指出我做错了什么吗?
你需要有GROUP BY
子句,因为您需要使用COUNT()
来计算出现次数benchID
.
INSERT INTO BATCH_ID (distinct_bench), number)
SELECT benchID as distinct_bench, COUNT(*) number
FROM big_table
GROUP BY BATCH_ID
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)