코딩 관련/DB
[MSSQL] TABLE 특정 행만 select하기
메리짱123
2022. 10. 17. 20:08
반응형
table에서 특정 행만 출력하기.
예를 들어 아래 테이블에서 2번째 행만 가져오기.
[MEMBER] 테이블
ID | NAME |
HONG | 길동 |
PI | 카츄 |
DUL | 리 |
요약) 순번 열을 만들어 준 후 SELECT 하면 됨.
1. ROW_NUMBER()로 순번 열을 만들어 주기
SELECT ROW_NUMBER() OVER(order by ID asc) as 'NO', ID, NAME FROM MEMBER; |
쿼리 결과
NO | ID | NAME |
1 | DUL | 리 |
2 | HONG | 길동 |
3 | PI | 카츄 |
2. 순번 열을 만들어준 테이블을 임시테이블로 생성하거나 테이블 변수에 넣어서 거기서 select 하면 댐.
A) 임시테이블로 생성한 후에 SELECT하기
WITH TEMP AS
(
SELECT ROW_NUMBER() OVER(order by ID asc) as 'NO', ID, NAME
FROM MEMBER
) --임시테이블 생성
SELECT * FROM TEMP WHERE NO=2; --2번째 열 SELECT
B) 테이블 변수에 넣어서 SELECT하기
DECLARE @TEMP TABLE( --테이블 변수 생성
NO INT,
ID VARCHAR(10),
NAME VARCHAR(10)
)
--테이블 변수에 SELECT결과 넣기
INSERT INTO @TEMP
SELECT ROW_NUMBER() OVER(order by ID asc) as 'NO', ID, NAME FROM MEMBER
SELECT * FROM @TEMP WHERE NO=2; --2번째 열 SELECT
머가 편한지는 선택
반응형