2012-09-14 28 views
-4

我有兩個表格:tbl_subscribertbl_faculty
tbl_subscriber具有字段即:name,id_number,email, phone

tbl_faculty具有:f_namel_nameemailphone使用php和mysql製作一個通用搜索框來搜索幾個表格

我有一個搜索框。我想寫一個查詢,如果我在其中鍵入電話號碼/電子郵件/名稱/ f_name/l_name,則它應該搜索兩個表以匹配提供的條目,並且它應該返回與該條目相對應的所有行。

可以肯定的是,提供的條目將在所提到的任何一個表格中(因爲我製作了這樣的表格),而不是兩者。我的意思是一次只有一個表格字段可以匹配,但是查詢應該同時搜索兩個表格。

+0

我已經嘗試使用案例和工會所有。 – inquisitive

+1

您可以將您的代碼添加到問題中,並準確解釋您遇到的問題是什麼? – andrewsi

+0

select * from tbl_subscriber union all select * from tbl_faculty - 查詢給出「使用的SELECT語句有不同數量的列」 – inquisitive

回答

0
select x , y from tbl_subscriber 
    union all 
    select x , null as y from tbl_faculty 
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 

你可能需要做一些鑄造爲name字段,但它至少圍繞具有不同數目的字段的表的問題得到。