将两个select <value>合并为一个语句?

0 mysql sql

我的主要问题是我不知道怎么说在这个cond选择2上选择1.所以我把它们都写成了自己的陈述.有没有办法将它们结合起来?

select 1 from FlagContent where user=? and rev = ?;
select 2 from ContentRevision r
            join ContentRevision r2 on r.content=r2.content
            join FlagContent fc on fc.user=? and fc.rev = r2.id
            where r.id=?;
Run Code Online (Sandbox Code Playgroud)

Ode*_*ded 5

使用UNION"合并"相似的结果集.

SQL UNION允许您将多个表中的两个或两个以上的结果集组合在一起.

但是,使用它有一些条件:

  • 每个SELECT语句中的列数必须相同
  • SELECT语句的列列表中列的数据类型必须相同或至少可以转换.

select 1 from FlagContent where user=? and rev = ?;
UNION ALL
select 2 from ContentRevision r
            join ContentRevision r2 on r.content=r2.content
            join FlagContent fc on fc.user=? and fc.rev = r2.id
            where r.id=?;
Run Code Online (Sandbox Code Playgroud)