select * from table1 join table2 on table1.column3=table2.column4 where ...
...
$row=mysql_fetch_assoc($result);
Ancak, her iki değerlerini sırasıyla nasıl aynı sütun ada sahip yeni bir tabloda iki sütun (tablo1 tablo2 katılmak) vardır?
Onun tablo adı ile select
sütun adı öneki.
select table1.my_column, table2.my_column
from table1, table2
where table1.id = table2.t1_id
Ancak bu yöntemle, yerine kendi isimleri yerine, onların iade sipariş endeksleri kullanılarak sütun okumak gerekir. Başka bir cevabı her sütun isim, böylece dikkate as
kullanarak söz ismi ile onları okumak için gidiyoruz.
2 + Tabloları birleştirme nedeniyle sorguya bir sütun adı çarpışma olduğu zaman, siz kullanamazsınız *
. Sen kullanabilirsiniz:
SELECT table_1.*,
table_2.*
FROM table_1,
table_2
İstediğin sütunların listesini dönmezse, her sütunun açıkça listelemek gerekir. Etrafında hiçbir yolu yok - bir ya hep ya hiç anlaşma.
... Ama tam bir tablo adı her zaman yazarak tabloları diğer ad neden olan bir ağrı olabilir:
SELECT t1.*,
t2.*
FROM table_1 AS t1,
table_2 t2
Ya ad gösterim desteklenir. Eğer kendisine bir tablo katılmak istiyorsanız onlar da gerekli konum.
: Aslında \ gereken bir Seçim listesinde sadece sütun adlarını kullanarak * her zaman iyi olduğunu, ancak her şeyi istediğiniz zaman, o zaman, iyi, devam edin ve kullanın
Select a.*,
b.*,
a.id as a_id,
b.id as b_id,
a.name as a_name,
b.name as b_name
from tablea a,
tableb b
...
Bu bir ilk olarak, gereksiz zarar vermez. * A_id ve a_name içerir, ancak orada, * ilişkisel dizi kaybolmak gelen değerleri yani sadece yeni, benzersiz adlarla onları geri koydu.