gpt4 book ai didi

mysql - 列出表中不包含其他表中特定值的行

转载 作者:行者123 更新时间:2023-11-29 10:49:36 25 4
gpt4 key购买 nike

我有 2 个表,我需要 SQL 查询,它将选择 idb,基本表中的名称排除我们没有链接的位置,例如黄色。

basic_table:
idb... name ... value
1 color red
2 style modern

second_table
id ... idb ... second
1 1 green
2 1 yellow
3 2 red
4 2 blue

结果应该是:

idb... name
2 style

此查询将包含 idp 1,因为我们将其设置为绿色,但应将其排除。

SELECT
`basic_table`.`idp`, `basic_table`.`name`
FROM
`basic_table`
LEFT JOIN `second_table`
ON (`basic_table`.`idp` = `second_table`.`idp`)
WHERE (`second_table`.`second` NOT LIKE '%yellow%')

有什么想法吗?

最佳答案

您可以使用不存在轻松做到这一点:

select idb,
name
from basic_table b
where not exists (
select 1
from second_table s
where b.idb = s.idb
and s.second = 'yellow'
);

使用左连接:

select distinct b.idb,
b.name
from basic_table b
left join second_table s on b.idb = s.idb
and s.second = 'yellow'
where s.idb is null;

关于mysql - 列出表中不包含其他表中特定值的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43966514/

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