通过查找表获取给定类别的某些内容的T-SQL查询

时间:2011-05-25 02:08:34

标签: sql-server tsql

我有三个表,两个是“数据”表,一个是连接(或查找)表。

放置表格

  • PlaceId
  • 名称
  • 等...

类别表

  • CATID
  • 名称
  • 等...

PlaceCats表

  • PlaceId
  • CATID

(在每个Id字段之间定义了适当的关系)

我想要做的是拉出包含少于5个地方的类别...出于某种原因,我可以围绕T-SQL包围以实现这一点。

2 个答案:

答案 0 :(得分:4)

SELECT * 
FROM Categories 
WHERE CatId IN 
(
    SELECT CatId  
    FROM PlaceCats
    GROUP BY CatId
    HAVING COUNT(*) < 5
)

答案 1 :(得分:1)

获取原始数据:

select CatID, count(*) from PlaceCats group by CatID having count(*) < 5