簡體   English   中英

使用多個查詢加入mysql

[英]Join mysql with multiple queries

我需要加入三個不同的SQL表:

  1. 表“ internet”的列為id|type|status
  2. 具有列id|type_name表“ type_list”
  3. 具有列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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM