Моя основная проблема заключается в том, что я не знаю, как сказать, выбрать 1 на этом cond select 2 на этом cond. Поэтому я сделал их как свои собственные заявления. Есть ли способ их комбинирования?
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=?;
Используйте UNION
для "слияния" похожих наборов результатов.
SQL UNION позволяет объединить два или более двух результирующих наборов из нескольких таблиц.
Однако существуют некоторые условия для его использования:
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=?;
ExecuteScalar
не будет работать.