我有2张表:tbl_subscriber
和tbl_faculty
tbl_subscriber
有字段:name
,id_number
,email
,phone
。
tbl_faculty
有:f_name
,l_name
,email
,phone
。
我有一个搜索框。我想编写一个查询,如果我在其中键入电话号码/ email / name / f_name / l_name,那么它应该搜索两个表以匹配提供的条目,它应该返回与该条目对应的所有行。
可以肯定的是,所提供的条目将位于所提到的表中(因为我已经制作了类似的表),而不是两者都有。我的意思是,有一次只有一个表字段匹配,但查询应同时搜索两个表。
答案 0 :(得分:0)
select x , y from tbl_subscriber
union all
select x , null as y from tbl_faculty
答案 1 :(得分:0)
这可能会起到作用:
SELECT name,id_number,email,phone FROM tbl_subscriber
UNION
SELECT CONCAT(f_name, ' ', l_name) AS name, id_number, email, phone FROM tbl_faculty
您可能需要为名称字段进行一些转换,但它至少解决了具有不同字段数的表的问题。