gpt4 book ai didi

mysql - 使用 IF ELSE 语句连接多个表

转载 作者:行者123 更新时间:2023-11-29 14:17:21 26 4
gpt4 key购买 nike

我想使用 IF ELSE 连接多个表当列值与指定文本匹配时,Sql 查询中的语句。

假设我已经检查过coloumnName='Value'然后我想加入一个额外的表;否则我就不想加入了。这可能吗?我怎样才能做到这一点?

最佳答案

您无法有条件地联接表您需要使用外联接无条件地联接所有表,使用联接条件中的条件,然后从返回的数据集中选择所需的值,如下所示:

select r.id, p.name, a.name, t.name
from requests r
left outer join person p on r.type='person' and r.item_id = p.id
left outer join animal a on r.type='animal' and r.item_id = a.id
left outer join thing t on r.type='thing' and r.item_id = t.id

上面的示例显示了具有引用人、动物或事物的 item_id 的“请求”。 type 列决定引用哪个表。

结果将包含三列 name,其中最多一列为非空。

关于mysql - 使用 IF ELSE 语句连接多个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12389480/

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