1. SELECT TOP 갯수를 변수로 받아서 사용하는 방법
Declare @ROW_COUNT int = 30
SELECT
TOP(@ROW_COUNT)
*
FROM [테이블명]
2. WHERE 조건에 변수 있으면 해당 컬럼이 검색되고, 값이 없으면 전체가 검색되는 방법
parameter @USE_FLAG_IN
SELECT
*
FROM
[테이블명]
WHERE
((@USE_FLAG_IN = '' AND 1=1) OR (@USE_FLAG_IN <> '' AND USE_FLAG = @USE_FLAG_IN))
AND CO_CODE = @CO_CODE
AND DIV_CODE = @DIV_CODE
ORDER BY
FULL_ORDER
3. WHERE 조건에 검색구분, 검색 값을 동적으로 받아서 사용하는 방법
DECLARE @SEARCH_ID NVARCHAR(50) = 'ACTOR'
, @SEARCH_VALUE NVARCHAR(50) = '홍길동'
SELECT
*
FROM
[테이블명]
WHERE 1 = 1
AND ( -- 검색 구분을 동적쿼리 대신에 CASE문으로 표현
CASE @SEARCH_ID
WHEN 'ACTOR' THEN act_name
WHEN 'DEPT' THEN dept_code
END
) LIKE '%' + @SEARCH_VALUE + '%'