반응형


SELECT문


조건식

SELECT [* | DISTINCT] 컬럼

FROM TABLE명

[ WHERE 조건 ]

[ GROUP BY 컬럼 ]

[ HAVING 검색조건 ]

[ ORDER BY 컬럼 [ ASC | DESC ] 


데이터 처리순서

1. FROM

2. ON

3. JOIN

4. WHERE

5. GROUP BY

6. WITH CUBE 또는 WITH ROLLUP

7. HAVING

8. SELECT

9. DISTINCT

10. ORDER BY

11. TOP


*기본

SELECT * FROM TABLE명;  // TABLE명에 있는 모든 컬럼의 데이터를 찾는다.

SELECT 컬럼1, 컬럼2, 컬럼3 FROM TABLE명 // TABLE의 컬럼1, 컬럼2, 컬럼3의 데이터를 찾음

SELECT 컬럼1 AS 별칭 FROM TABLE명 // 컬럼1 AS 별칭 데이터를 뽑을때 컬럼1의 컬럼명이 별칭으로 바뀜


*집계 함수(숫자 데이터)

SUM() // 컬럼 데이터의 합

AVG() // 컬럼 데이터의 평균

COUNT() // 컬럼의 데이터 갯수

MAX() // 컬럼 데이터의 MAX값

NIN() // 컬럼 데이터의 MIN값


EX) SELECT SUM(컬럼1) FROM TABLE명 // 컬럼1의 모든데이터의 합을 가져옴.


*수치함수(숫자 데이터)

ROUND(데이터, 반올림위치) //반올림 및 자릿수

ABS() // 절대값

SIGN() // 부호

SQRT() // 제곱근

POWER(데이터, n) // n승


*문자열 함수(문자 데이터)

Ascii() // 문자열의 제일 왼쪽 문자의 아스키 코드 값을 반환(Integer형)

Char() // 정수 아스키 코드를 문자로 반환(Char형)

Charindex(찾을문자, 데이터, 찾을시작위치) // 문자열에서 지정한 식의 위치를 반환

Left() // 문자열에서 왼쪽에서부터 지정한 수만큼의 문자를 반환

Len() // 문자열의 길이 반환

Lower() // 대문자를 소문자로 반환

Ltrim() // 문자열의 왼쪽 공백 제거

Nchar()  // 지정한 정수 코드의 유니코드 문자 반환

Replace(데이터, 바꾸고싶은문자, 바꿀문자) -  문자열에서 바꾸고 싶은 문자 다른 문자로 변환

Replicate() // 문자식을 지정한 횟수만큼 반복

Reverse() // 문자열을 역순으로 출력

Right(데이터, 지정수) // 문자열의 오른쪽에서 부터 지정한 수 만큼 반환(Left() 와 비슷 )

Rtrim() // 문자열의 오른쪽 공백 제거

Space() // 지정한 수만큼의 공백 문자 반환

Substring(데이터,가져올자릿수, 길이) // 문자,이진,텍스트 또는 이미지 식의 일부를 반환

Unicode() // 식에 있는 첫번째 문자의 유니코드 정수 값을 반환

Upper() // 소문자를 대문자로 반환

Isnumeric() // 해당 문자열이 숫자형이면 1 아니면 0을 반환

Isdate() // 해당 문자열이 Datetime이면 1 아니면 0


WHERE 조건

SELECT * FROM TABLE명 WHERE 컬럼1=1; // 모든 컬럼의 데이터에서 컬럼1의 데이터가 1인 모든 컬럼의 데이터 값을 찾음


조건 함수

IS NULL // 데이터가 NULL인 값 가져오기 

BETWEEN A AND B // A와 B사이에 있는걸 가져옴

LIKE a% // a로 시작되는

LIKE %a% // a를 포함하는

LIKE a% // a로 끝나는

LIKE a_ // a로 시작하는 2자리

LIKE a___ // a로 시작하는 4자리

LIKE __a // a로 끝나는 3자리  

컬럼 IN (a, b) // 컬럼이 a이거나 b인 데이터 가져오기


SELECT DISTINCT 컬럼 FROM TABLE명 // 중복되지 않는 데이터만 가져옴

SELECT TOP n * FROM TABLE명 // 상위 n개의 데이터만 가져오기


ORDER BY 컬럼1 ASC  // 컬럼1 기준으로 오름차순

ORDER BY 컬럼1 DESC // 컬럼1 기준으로 내림차순



※HAVING이나 빠진부분은 추후 업데이트하겠습니다.


반응형

+ Recent posts