gpt4 book ai didi

sql - 如果一条记录包含特定值,如何排除整个组?

转载 作者:行者123 更新时间:2023-12-02 14:53:47 25 4
gpt4 key购买 nike

这是我的表格:

TableA      
primarykey Name Description
1 John Male
2 Josh Male
3 Allen Male

TableB
projectid Name Category
1 John QB
1 John RB
1 John WR
2 Josh QB
2 Josh WR
3 Allen QB

我想要一个查询来组合两个表,但我只想要其中一个记录没有“RB”的记录。

我在下面有一个一般查询

Select * from TableA a, TableB b, where a.primarykey = projectid
projectid   Name    Category    Description
1 John QB Male
1 John RB Male
1 John WR Male
2 Josh QB Male
2 Josh WR Male
3 Allen QB Male

但我不确定如何排除所有具有“RB”的记录。

这就是我想要的结果:

projectid   Name    Category    Description
2 Josh QB Male
2 Josh WR Male
3 Allen QB Male

有什么提示或建议可以用来尝试获得它吗?

最佳答案

您可以通过这种方式将 not exists 与 join 结合使用,以确保您不会获得任何类别为“RB”的 ID。

select t1.projectId, t1.name, t1.category, t.description from tableA  t 
join tableB t1 on t1.projectid = t.primarykey
where not exists (select 1 from tableB t2 where t1.projectID = t2.projectID and t2.category = 'RB')
order by t1.projectID ;


PROJECTID NAME CATEGORY DESCRIPTION
2 Josh WR Male
2 Josh QB Male
3 Allen QB Male

关于sql - 如果一条记录包含特定值,如何排除整个组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54103061/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com