有一个笔记表,可以存储人和车的记录。
SELECT * FROM note
LEFT JOIN people
ON note.people_id = people.id
LEFT JOIN car
ON note.car_id = car.id
现在如何按名称和机器名称的字母顺序排序?
note:
|id|people_id|car_id|
|1 |1 | null |
|2 |2 | null |
|3 |null | 1 |
|4 |null | 2 |
people:
|id| name |
|1 |Андрей|
|2 |Борис |
car:
|id|name |
|1 |Ауди |
|2 |Бугати|
需要得到
|id|people_id|car_id|
|1 |1 | null |
|3 |null | 1 |
|2 |2 | null |
|4 |null | 2 |
我使用
CASE WHEN (people.name IS NULL) THEN car.name ELSE people.name END它,它的工作速度比 COALESCE 快一点(根据我的测试,字面意思是 10 毫秒)。