首页 > 解决方案 > 仅显示来自具有确切三个条目的用户的 SQL 结果

问题描述

SELECT * 
FROM PlanData 
WHERE GeneralEventCode = 'VM' 
  AND AirlineCode = 'LH' 
  AND DateStart > '2019-05-01' 
  AND UserHomeBaseAirportCode = 'FRA'

在这张表中,我也有字段UserIdUserId如果 a在该表中有确切的 3 个条目,我只想得到结果。

谢谢您的帮助

标签: sqlsql-serverdatabase

解决方案


您需要在 WHERE 子句中再添加 1 个条件,才能仅选择UserId具有 3 个条目的 s:

SELECT * FROM PlanData 
where 
  GeneralEventCode='VM' 
  and AirlineCode='LH' 
  and DateStart>'2019-05-01' 
  and UserHomeBaseAirportCode='FRA'
  and UserId IN (
    SELECT UserId 
    FROM PlanData 
    GROUP BY UserId 
    HAVING Count(*) = 3
  )

推荐阅读