2017-07-14 29 views
0

其表名這是我從3個表我想檢索唯一的數據來自多個表我也想,以顯示與記錄

mysql> SELECT DISTINCT * FROM (SELECT DISTINCT * FROM TEMP UNION SELECT DISTINCT * FROM TEMP2 UNION SELECT DISTINCT * FROM TEMP3)t; 
+---------+-------------+-----------------------+ 
| FNAME | LNAME  | EMAIL     | 
+---------+-------------+-----------------------+ 
| Aamir | khan  | [email protected]  | 
| Faiyaz | Ahmed  | [email protected]  | 
| Shakeeb | Uddin  | [email protected]  | 
| siri | hema  | [email protected] | 
| sravani | mettupalle | [email protected]  | 
| Faiyaz | Ahmed  | [email protected]  | 
+---------+-------------+-----------------------+ 
6 rows in set (0.00 sec) 

現在我也想以顯示它的表名獲得唯一值查詢它所屬的回溯記錄。 請幫助我用最佳查詢檢索多個表中的唯一值以及上述問詢查詢。謝謝。

回答

1

使用計算列:

SELECT DISTINCT * 
FROM 
(
    SELECT FNAME, LNAME, EMAIL, 'TEMP' AS table_source UNION 
    SELECT FNAME, LNAME, EMAIL, 'TEMP2'    UNION 
    SELECT FNAME, LNAME, EMAIL, 'TEMP3' 
) t; 

這一招成功運作的原因是因爲我們「知道」我們從中選擇在此刻每個聯合查詢的表的名稱。

+0

將數據本地文件'文件路徑'加載到由[,'設置[colomn name] =「你的表名'分隔的[table name]字段中; –

+0

我不明白你的意見 –

+0

這是查詢i用於獲取唯一的數據以及將文件加載到表中並獲取數據及其所屬的表名。 –

相關問題