0
工会,我想触发union
根据条件:Mysql的防止基于条件
set @a := 0;
select @a := 1, b.name from B b
UNION
select 0, c.name from C c
要像输出:
set @a := 0;
select @a := 1, b.name from B b
if(@a > 0, UNION select 0, c.name from C c, '');
这样我就可以保存第二个选择,如果第一一个已经返回行。事情是那些查询很重,并且有很多连接,所以我只想在必要时执行它们。
由于这项工作:
select b.name from B b where if(true, b.name = 'example', '')
有没有什么办法可以做到这一点?
谢谢。
ssedano
事情是,第一个查询有一些连接和遗留的东西,使它变慢。我想知道是否可以保存发出多个选择 – ssedano
如果您不想执行查询,那么您需要条件逻辑,可能需要临时表。 –