2014-10-28 34 views
0

我有1個數據庫可以容納12個以上的表,我想從所有表中選擇數據,或者至少選擇4個表中的數據。如何從PHP中選擇3個以上的表MySQL

然而,似乎沒有任何工作。我不認爲我可以以任何方式加入表格,因爲ID是不同的。

這是我到目前爲止有:

$query = mysqli_query($con, 
"SELECT 
    table1.field, 
    table2.field, 
    table3.field 

    FROM table1 

    LEFT JOIN table2 
     ON table1.id = table2.id 
     LEFT JOIN table3 
     ON table3.id = table1.id 
")or die(); 

任何幫助,將不勝感激,謝謝。

+0

是那些相互關聯的表?你不能隨意將各種東西聯繫在一起,並希望得到明智的結果。 – 2014-10-28 20:51:30

回答

1
$query = mysqli_query($con, 
"SELECT 
    table1.field, 
    table2.field, 
    table3.field 

    FROM table1 

    LEFT JOIN table2 
     ON 1 
     LEFT JOIN table3 
     ON 1 
")or die(); 

JOIN通常在標籤之間存在關係時使用。這就是它需要ON條件的原因。

這是可行的,但你也可以說:

"SELECT * FROM 
(
SELECT field FROM TABLE1 
UNION 
SELECT field FROM TABLE2 
UNION 
SELECT field FROM TABLE3 
UNION 
... 
) AS name 
" 

看到這裏之間UNIONUNION ALL區別: http://www.w3schools.com/sql/sql_union.asp