2013-02-22 35 views
1
SELECT 
* 
FROM table1 
LEFT JOIN table2 
ON table1.id=table2.ref 

如何清楚地標識來自table1或table2的列。無論如何,要獲取別名中的表名可用於通過表名來標識列?如果它很重要,我使用PHP從數據庫中獲取。在加入mysql查詢結果中獲取表名

+0

我很好奇,爲什麼你需要的是什麼?在我15年以上的經歷中,我從來沒有遇到過這樣的問題。 – 2013-02-22 11:10:58

+0

我使用連接的查詢從不同的表中獲取數據。每個表格代表一個php中的類。某些類具有屬於其他類的對象的屬性。我不想手動填充每個屬性。如果可以通過列來獲取表名,我將動態地填充對象並分配給基類屬性。 – varuog 2013-02-22 11:14:57

+1

AFIK您必須爲您請求的每個列設置一個別名 – 2013-02-22 12:03:11

回答

0

那麼,你的理由是公平的,但實施是不尋常的。

當每個表在php中代表一個類時,它被稱爲ORM - 對象關係映射。
當它被使用時,對象已經知道它是字段,因爲每個表只是類屬性的反映。坦率地說,對於ORM,沒有人會手動創建表 - 它們是基於對象屬性創建(或更改)的。
因此,一個對象總是可以告訴它來自其他人的字段。

至於你的文字的問題 - 沒有,有沒有辦法能得到這樣的信息,據我所知