我需要知道,这是执行此操作的正确方法:
(SELECT id, name, 1 AS reference FROM antenna WHERE id IN (SELECT antenna_id FROM reference))
UNION DISTINCT
(SELECT id, name, 0 AS reference FROM antenna WHERE id NOT IN (SELECT antenna_id FROM reference))
这样做已经有一段时间了,即使它工作得很好,也很难看。
我无法确定它是否可以正常工作,测试和基准测试:
SELECT antenna.id, antenna.name, CASE WHEN COALESCE(reference.antenna_id, 0)!=0
THEN 1 ELSE 0 END AS reference FROM antenna LEFT JOIN reference
ON antenna.id=reference.antenna_id
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句