Sırasıyla hem değerleri almak için nasıl aynı sütun ada sahip yeni bir tabloda iki sütun (tablo1 tablo2 katılmak) vardır

4 Cevap php
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?

4 Cevap

Bir takma ad gibi birlikte özellikle columsn çağır

SELECT table_1.id as table_1_id, table_2.id as table_2_id

Youll tüm veya sütunların çoğu tablolardan en az birini oluşturan bu şekilde listelemek için var ama birden çok tablo arasında aynı adla cols erişebilirsiniz.

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.

Table Aliases

... 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.