如果左外连接提供了一个值(我的例子为t2.id),我想选择它。请注意,对于我的特定数据,左连接只有一个或零个匹配。如果没有,我想选择另一个值。
以下操作无效,因为没有LIMIT 1
的查询可能会返回多行,而第一行可能不会是左连接匹配的行。
SELECT COALESCE(t2.id,t1.id) AS id
FROM t1
LEFT OUTER JOIN t2 ON t2.id=t1.t2_id
WHERE t2.fk=123
ORDER BY id DESC LIMIT 1
如何选择存在限制的左连接返回的值?
答案 0 :(得分:2)
将order by
更改为:
order by (t2.id is not null) desc