我正在尝试在多个表上执行搜索。
我将简化问题并说我有2个表Worker
和Customer
都有Id, Name, Surname
而Worker
有Position
,所有字段都是{ {1}} varchar
除Id
。
如何进行将返回Int
或Customer
行的查询,其中一个字段包含输入的搜索字符串。
我尝试过加入,但我也加入了行。
答案 0 :(得分:4)
select id,name,surname,position,'worker' as tbl from worker where ..
union all
select id,name,surname,'','customer' from customer where ...
通过这种方式,您甚至可以知道表所属的结果。
答案 1 :(得分:4)
只有UNION
两个查询
如果你真的可以JOIN
这两个,你可以使用
IF
子句中的SELECT
语句,用于显示正确的字段
但是,根据我对您的问题的理解,请使用UNION