[MSSQL] 프로시저/함수/테이블 키워드 검색 쿼리
하루 한 번 이상은 쓰는,, 키워드 검색 쿼리
-- 1) 테이블 내 컬럼 찾기
SELECT TB.NAME AS 'TABLE'
, COL.NAME AS 'COLUMN'
, TB.CREATE_DATE
, TB.MODIFY_DATE
FROM SYS.TABLES TB
INNER JOIN SYS.COLUMNS COL
ON TB.OBJECT_ID = COL.OBJECT_ID
WHERE COL.NAME LIKE '%' + '찾고 싶은 키워드' + '%'
ORDER BY TB.NAME
-- 2) 프로시저 내 키워드 검색
SELECT NAME, CREATE_DATE, MODIFY_DATE
FROM sys.procedures
WHERE OBJECT_DEFINITION(object_id) LIKE '%' + '찾고 싶은 키워드' + '%'
ORDER BY MODIFY_DATE DESC
-- 3) FUNCTION 포함하여 찾기
SELECT B.NAME AS NAME
, B.TYPE_DESC AS 'TYPE'
, A.DEFINITION AS CONTENTS
, B.CREATE_DATE
, B.MODIFY_DATE
FROM SYS.SQL_MODULES A WITH (NOLOCK)
LEFT JOIN SYS.OBJECTS B WITH (NOLOCK)
ON A.OBJECT_ID = B.OBJECT_ID
WHERE DEFINITION LIKE '%' + '찾고 싶은 키워드' + '%'
코드블럭 수정은 어떻게 하는건지 몰라서 그냥 맨날 쓰던 그대로 적었는데 왜 미묘하게 띄어쓰기 다름 신경쓰인다;
'찾고 싶은 키워드' <- 에 원하는 단어를 넣어서 검색하면 됨
SQL 편집기에 저장해놓고 쓰면 꽤 쓸만함