我认为这很容易,但我找不到解决方案:
我有一个非常大的桌子,其中的项目名称为""柱。
我有第二个表格,其中包含相应的"本地化名称"对于表1中的某些项目。
我现在想要按照"本地化名称"排序的表1从表2中可以看出,如果没有按照" name"来自表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
答案 0 :(得分:1)
您正在寻找left join
和coalesce()
:
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);