搜索

首页  >  问答  >  正文

如何在第一个查询没有结果时执行第二个查询 - MYSQL

如何在MYSQL中获取结果:

如果第一个选择的行数超过 0 行,则返回结果,否则返回第二个选择的结果(不是相同的表,两个选择中只有一列)。

类似的东西 SELECT IF ((EXISTS(从表 1 中选择列 1)),(从表 1 中选择列 1),(从表 2 中选择列 1);

P粉998100648P粉998100648440 天前1044

全部回复(1)我来回复

  • P粉342101652

    P粉3421016522023-09-17 12:14:43

    你可以在这里使用联合技巧:

    WITH cte AS (
        SELECT Column1, 1 AS pos FROM Table1
        UNION ALL
        SELECT Column1, 2 FROM Table2
    )
    
    SELECT Column1
    FROM cte
    WHERE
        pos = 1 OR
        NOT EXISTS (SELECT 1 FROM cte WHERE pos = 1);
    

    回复
    0
  • 取消回复