2017-08-29 57 views
0

我的服務器上有兩個名稱不同的數據庫,但兩者都有一個標題爲Clients的表。當我運行一個信息模式查詢時,它會從兩個數據庫中返回列,所以當我只想要一個時,我得到了重複。信息模式重複 - 指定要在SELECT中查詢哪個數據庫

例子:

SELECT COLUMN_NAME FROM information_schema.COLUMNS 
WHERE table_name = 'Clients' 

我得到重複列這樣First_Name是顯示了兩次,因爲它是從Clients表在兩個數據庫返回列。

我的問題是:

是有指定的方式在SELECT語句查詢該數據庫,以便只返回一個我想列?例如:

SELECT COLUMN_NAME FROM information_schema.COLUMNS 
WHERE db_name = 'DB1' AND table_name = 'Clients' 

回答

1

您正在尋找TABLE_SCHEMA列。

SELECT COLUMN_NAME 
FROM INFORMATION_SCHEMA.COLUMNS 
WHERE 
    TABLE_SCHEMA = 'DB1' AND 
    TABLE_NAME = 'Clients' 

正如一個供參考,這是我所得到的,當我做desc INFORMATION_SCHEMA.COLUMNS;

+--------------------------+---------------------+------+-----+---------+-------+ 
| Field     | Type    | Null | Key | Default | Extra | 
+--------------------------+---------------------+------+-----+---------+-------+ 
| TABLE_CATALOG   | varchar(512)  | NO |  |   |  | 
| TABLE_SCHEMA    | varchar(64)   | NO |  |   |  | 
| TABLE_NAME    | varchar(64)   | NO |  |   |  | 
| COLUMN_NAME    | varchar(64)   | NO |  |   |  | 
| ORDINAL_POSITION   | bigint(21) unsigned | NO |  | 0  |  | 
| COLUMN_DEFAULT   | longtext   | YES |  | NULL |  | 
| IS_NULLABLE    | varchar(3)   | NO |  |   |  | 
| DATA_TYPE    | varchar(64)   | NO |  |   |  | 
| CHARACTER_MAXIMUM_LENGTH | bigint(21) unsigned | YES |  | NULL |  | 
| CHARACTER_OCTET_LENGTH | bigint(21) unsigned | YES |  | NULL |  | 
| NUMERIC_PRECISION  | bigint(21) unsigned | YES |  | NULL |  | 
| NUMERIC_SCALE   | bigint(21) unsigned | YES |  | NULL |  | 
| DATETIME_PRECISION  | bigint(21) unsigned | YES |  | NULL |  | 
| CHARACTER_SET_NAME  | varchar(32)   | YES |  | NULL |  | 
| COLLATION_NAME   | varchar(32)   | YES |  | NULL |  | 
| COLUMN_TYPE    | longtext   | NO |  | NULL |  | 
| COLUMN_KEY    | varchar(3)   | NO |  |   |  | 
| EXTRA     | varchar(30)   | NO |  |   |  | 
| PRIVILEGES    | varchar(80)   | NO |  |   |  | 
| COLUMN_COMMENT   | varchar(1024)  | NO |  |   |  | 
| GENERATION_EXPRESSION | longtext   | NO |  | NULL |  | 
+--------------------------+---------------------+------+-----+---------+-------+