2015-10-14 31 views
0

我目前使用下面的查詢從一個MySQL表獲取列名如何獲取mysql中兩個表的列名?

SELECT COLUMN_NAME as column_name 
    FROM INFORMATION_SCHEMA.COLUMNS 
     WHERE TABLE_NAME = 'product' 
      AND COLUMN_NAME 
       NOT IN ('ean','jan','isbn','mpn','upc'); 

我如何可以獲取來自多個表的列名?這種情況下有沒有像JOIN這樣的選項?

回答

0
SELECT COLUMN_NAME as column_name 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE (TABLE_NAME = 'product' AND COLUMN_NAME NOT IN ('ean','jan','isbn','mpn','upc')) 
    OR (TABLE_NAME = 'other_table' AND COLUMN_NAME NOT IN ('something_else')) 
+0

它工作正常!我只是想要一個提示,如果有一些類似的名稱的列會有什麼結果?如何通過mysql完成別名,以防止它顯示結果? –

+0

對不起,但我不明白你的意思 –

+0

假設我有兩個表格,一個是訂單表格,另一個是order_product表格。這兩個表都有order_id列。那麼mysql將如何在查詢中顯示它。或者它將使用的別名策略是什麼。 –

0

使用下面的查詢

SELECT COLUMN_NAME as column_name 
    FROM INFORMATION_SCHEMA.COLUMNS 
     WHERE TABLE_NAME in ('product' , 'other table name') 
      AND COLUMN_NAME 
       NOT IN ('ean','jan','isbn','mpn','upc'); 
相關問題