gpt4 book ai didi

mysql - SQL where 等于表达式

转载 作者:行者123 更新时间:2023-11-29 04:00:50 25 4
gpt4 key购买 nike

我可以这样吗

select * 
from tableA JOIN
tableB ON tableA.id=tableB.id
where tableB.someId = select id from otherTable where anotherId = 1

我有 2 个,可能吗?

最佳答案

当子查询只返回 1 个值时,您可以使用 =

当子查询返回超过 1 个值时,您将不得不使用 INEXISTS:

  1. 使用 IN:

    select * 
    from tableA JOIN
    tableB ON tableA.id=tableB.id
    where tableB.someId IN (select id
    from otherTable
    where anotherId = 1)

    IN 确定指定值是否与子查询或列表中的任何值匹配。

    阅读更多 here .

  2. 使用 EXISTS:

    select * 
    from tableA JOIN
    tableB ON tableA.id = tableB.id
    where EXISTS (select id
    from otherTable
    where anotherId = 1
    and tableB.someId = otherTable .id)

关于mysql - SQL where 等于表达式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23295117/

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