gpt4 book ai didi

MySQL 按 2 个表的 2 列对表进行排序

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

我认为这很容易,但我没有找到解决方案:

我有一个非常大的表,其中的项目具有“名称”列。

我有第二个表,其中包含表 1 中某些项目的相应“本地化名称”。

我现在希望表 1 按表 2 中的“本地化名称”排序,但如果不存在本地化名称,则按表 1 中的“名称”排序。

示例:

表1

id name
1 USA
2 Italy
3 Germany
4 Australia

表2

id loc_name    t1_id
1 Italia 2
2 Deutschland 3

结果

4 Australia
3 Deutschland
2 Italia
1 USA

最佳答案

您正在寻找left joincoalesce():

select t1.*, coalesce(t2.loc_name, t1.name) as real_name
from t1 left join
t2
on t1.id = t2.ti_id
order by coalesce(t2.loc_name, t1.name);

关于MySQL 按 2 个表的 2 列对表进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48731942/

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