两条查询SQL能不能合成一条?-灵析社区

biubiuuuuu

SELECT * FROM t WHERE active = 1 AND enabled = 1 DESC LIMIT 0, 1 SELECT * FROM t WHERE enabled = 1 DESC LIMIT 0, 1 这两个条`sql`能不能合并成一条,其实就是想 如果 `active = 1` 没有的,就随便找一个作为默认 现在就是两条`sql`,如果不存在,需要判断,然后再次查询,我想每次查询至少有一条数据,除非表为空 还有,用 `AND` 链接的,程序是不是从左到右这样一个一个匹配

阅读量:15

点赞量:0

问AI
SELECT * FROM ( SELECT * FROM t WHERE active = 1 AND enabled = 1 UNION ALL SELECT * FROM t WHERE enabled = 1 ) AS temp ORDER BY (CASE WHEN active = 1 THEN 0 ELSE 1 END) LIMIT 1 «用 AND 链接的,程序是不是从左到右这样一个一个匹配?» 是的,顺序优先级是not>and>or,除非用括号括起来