답변:
information_schema
이것이 표준 호환 크로스 RDBMS 방법입니다.
SELECT table_catalog, table_schema, table_name, column_name
FROM INFORMATION_SCHEMA.columns
WHERE column_name = '<your column name>';
이 문서를 볼 수 있습니다
INFORMATION_SCHEMA
우리 자신의 @AaronBertrand ( sqlblog.com/blogs/aaron_bertrand/archive/2011/11/03/… ) 가 사용하지 않는 이유
information_schema.columns
2006 년부터 ID 열을 지원 했습니다. 구현하기까지 10 년이 걸렸 습니다. Microsoft SQL이 표준을 지원하지 않는 경우 표준을 살펴보아야 할 것입니다. 다른 사람들도 그렇습니다.
IBM DB2의 경우 다음을 사용합니다.
select tabschema,tabname from syscat.columns where colname = 'COLUMN_NAME'
DB2에서 열 이름은 대문자 이외의 다른 이름 으로 큰 따옴표 안에 정의 되지 않는 한 대문자로되어 있습니다. 그런 다음 열 이름 의 정확한 케이스도 제공해야합니다 .
WHERE UPPER(colname) = 'COLUMN_NAME'
.
아래 쿼리는 원하는 것을 제공합니다.
use YourDatabase;
go
select
object_schema_name(t.object_id) + '.' + t.name as table_name,
c.name as column_name
from sys.tables t
inner join sys.columns c
on t.object_id = c.object_id
where c.name like '%ColumnSearchText%';
정확한 이름의 열을 찾으려면 WHERE
절을 다음과 같이 바꾸십시오 .
where c.name = 'ColumnSearchText';