我有一个客户端以隐藏字段中的逗号分隔方式选择的ID列表,例如(1,2,3) 现在我需要根据Access DB中的这些ID检索数据。
select * from Product where ID in (1,2,3)
这很好,但如果在IN CLAUSE中有重复的ID,我需要返回计数和行。 假设我在IN CLAUSE中有ID =(1,2,1,1,2,5,6)。所需的输出是
ID | Count | Name | Age
1 3 bcb 45
2 2 sdf 53
5 1 sfg 23
6 1 gdd 12
我无法编辑或修改客户端ID列表。只是为了进一步澄清ID是表中的主键。我想从IN CLAUSE中计算相同ID的数量,而不是从数据库中计算。有办法吗?
答案 0 :(得分:0)
如果相同的Id表示相同的记录,则以下内容将执行:
Select [ID], Count([ID]) as [Count], [Name],[Age]
From [Product]
Where [ID] in (1,2,5,6)
Group By [ID],[Name],[Age]