Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/search/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sql server 显示存在两列的所有表-SQL Server 2008_Sql Server_Search_Where - Fatal编程技术网

Sql server 显示存在两列的所有表-SQL Server 2008

Sql server 显示存在两列的所有表-SQL Server 2008,sql-server,search,where,Sql Server,Search,Where,我想搜索同时包含“Documentversionid”和“ClientMedicationID”列的所有表 试试这个: SELECT t1.TABLE_NAME FROM ( SELECT TABLE_NAME FROM INFORMATION_SCHEMA.COLUMNS WHERE COLUMN_NAME LIKE '%Documentversionid%' ) t1 INNER JOIN ( SELECT TABLE_NAME FROM INF

我想搜索同时包含“Documentversionid”和“ClientMedicationID”列的所有表

试试这个:

SELECT t1.TABLE_NAME
FROM
(
    SELECT TABLE_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE COLUMN_NAME LIKE '%Documentversionid%'
) t1
INNER JOIN
(
    SELECT TABLE_NAME 
    FROM INFORMATION_SCHEMA.COLUMNS 
    WHERE COLUMN_NAME LIKE '%ClientMedicationID%'
) t2
    ON t1.TABLE_NAME = t2.TABLE_NAME
这应该做到:

SELECT COUNT(*) as COUNT, TABLE_SCHEMA, TABLE_NAME, COLUMN_NAME  
FROM `information_schema`.`columns` 
WHERE `TABLE_SCHEMA`='<YOUR DATABASE>' AND 
   (`COLUMN_NAME` = 'Documentversionid' OR `COLUMN_NAME`='ClientMedicationID') 
GROUP BY `TABLE_NAME` HAVING COUNT > 1
选择COUNT(*)作为计数、表模式、表名称、列名称
来自'information\u schema`.'columns`
其中`TABLE_SCHEMA`=''和
(`COLUMN\u NAME`='Documentversionid'或`COLUMN\u NAME`='ClientMedicationID')
按计数大于1的“表名称”分组