我有一张表T.我们为匹配user_id
的特定type = "Red Card"
提供了多条记录。我只是希望在整场比赛中从未收到user_Id
的{{1}}和match_id
。
根据附表的图像,我将获得输出:
分别为"Red Card"
和match_id : 3036
以及3090
和user_id 4
答案 0 :(得分:0)
Select match_id,user_id from T where user_id Not IN (Select user_id from T where type = 'Red Card') as k Group By user_id
上述查询将删除所有拥有红牌的用户,首先从T中选择嵌套查询中有红牌的user_id,然后使用“NOT IN”选择不在嵌套语句中的用户,然后按user_id分组删除重复记录。
答案 1 :(得分:0)
我做这样的事情:
SELECT * FROM T WHERE type <>'Red Card' GROUP BY match_id, user_id
这将选择表格中没有&#34; Red Card&#34;的所有记录。而且group by将为每对情侣/用户提供一条记录
答案 2 :(得分:0)
如果要选择所有字段使用子查询
SELECT DISTINCT user_id, match_id from tbl where match_id NOT IN (
SELECT match_id from tbl where type = 'Red Card'
)
答案 3 :(得分:0)
希望这会有所帮助。
SELECT DISTINCT user_id, match_id FROM T WHERE type <> 'Red Card' GROUP BY match_id
由于表格中有重复的user_id
和match_id
- s,我使用DISTINCT
从表中选择唯一ID。
答案 4 :(得分:0)
SELECT * FROM `T` where not exists (SELECT * FROM `T` where `type`="Red card")
答案 5 :(得分:0)
SELECT MATCH_ID AND USER_ID FROM TABLENAME WHERE TYPE NOT IN('RED CARD')
此查询可能会帮助您