-
SELECT FROM WHERE, ORDER BY데이터베이스 with MSSQL/SQL 입문 2022. 4. 6. 15:22
1. 분석
읽는 순서는 영어권 기준이기에
순서는 FROM -> WHERE -> SELECT -> ORDER BY 기준으로 봐야 프로그램 논리에 충돌하지 않음.
SELECT nameFirst, birthYear , birthCity FROM players WHERE (birthCity Like 'New%' OR birthCountry != 'USA') AND deathYear IS NOT NULL ORDER BY birthYear DESC OFFSET 100 ROWS FETCH NEXT 100 ROWS ONLY;
SELECT : 컬럼을 선택
FROM : 테이블을 선택
WHERE : 선택에 조건을 지정해줌
AND : C#에서 &&에 해당
OR : C#에서 ||에 해당
LIKE : 해당되는 문자열을 추출
% : 'NEW%'는 NEW로 시작하는 문자열 추출
_ : 'NEW_'는 NEW로 시작하는 4글자의 문자열 추출
IS NOT NULL : NULL을 포함하지 않는 조건
IS NULL : NULL을 포함하는 조건
ORDER BY : 정렬 (DESC=내림차순, ASC=오름차순), ASC는 생략가능
OFFSET 100 ROWS FETCH NEXT 100 ROWS ONLY : 100번째 열부터 시작하여 다음 100개의 열 데이터 추출
SELECT TOP 100 2021 - birthYear AS koreanAge FROM players WHERE deathYear IS NULL AND birthYear IS NOT NULL AND (2021 - birthYear) <= 80 ORDER BY koreanAge
SELECT nameFirst + ' ' + nameLast AS FullName FROM players WHERE nameFirst IS NOT NULL AND nameLast IS NOT NULL
TOP ~ : 상위 ~개의 데이터 추출
AS ~ : 컬럼의 이름을 바꿔서 추출
-, +, >, <, 등의 연산도 가능함
주의. 연산에 NULL이 들어가 있으면 반드시 NULL이 출력됨.
'데이터베이스 with MSSQL > SQL 입문' 카테고리의 다른 글
INSERT, DELETE, UPDATE (0) 2022.04.06 GROUP BY, HAVING (0) 2022.04.06 집계함수 (0) 2022.04.06 CASE (0) 2022.04.06 DATETIME (0) 2022.04.06