[英]Join mysql with multiple queries
我需要加入三個不同的SQL表:
id|type|status
id|type_name
表“ type_list” id|status_name
表“ status_list” 我想從其他兩個表(type_list,status_list)中輸出文本,但不希望將值作為當前在“ internet”表中的數字進行輸出。
我也不想進行惰性編程-PHP數組使ID等於
$type_list = array("1"=>"VDSL2","2"=>"ADSL");
$status_list = array("1"=>"Pending","2"=>"Active");
因為文本已經存在於表中,所以我只是不知道如何將它們連接起來,以及將文本作為查詢組合在一起在一個查詢中輸出。
使用JOIN
SELECT i.id, type_name, status_name
FROM internet i
LEFT OUTER JOIN type_list t ON t.id = i.type
LEFT OUTER JOIN status_list s ON s.id= i.status
閱讀MySQL文檔以獲取更多信息。
只需在您想要的字段上寫選擇即可。
select internet.id,type_name,status_name from internet
inner join type_list
on type_list.id=internet.id
inner join status_list
on status_list.id=internet.id
為此,您需要LEFT JOIN
,如下所示:
SELECT i.id, t.type_name, s.status_name
FROM internet AS i
LEFT JOIN type_list AS t ON t.id = i.id
LEFT JOIN status_list AS s ON s.id= i.id
從您的問題來看,不清楚您要加入查詢的字段。 在上面的示例中,查詢在id
字段上聯接。
另請注意,實際上並不需要AS
,我只是將其放在其中以清楚說明發生了什么
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.