SQL기본, DDL,DDL,DCL..

HakJun·2022년 2월 15일
2

Database

목록 보기
6/16

VARCHAR와 CHAR의 차이, CHAR TYPE은 고정길이이다.

DESC, DESCRIBE
디폴트값은 오름차순이지만, 내림차순으로 정렬할 때 사용한다.

AND
조건이 모두 참인 경우를 나타낼 때 사용한다.

BETWEEN
조건이 A와 B 사이값일 때 A BETWEEN B라고 사용한다.

OR
조건이 여러개 중 하나일 경우를 충족할 때 사용한다.

in(3개)
셋중에 하나라도 조건에 해당하는지를 판별한다.

Like "A%"
A가 들어있는 값을 추출한다.

서브쿼리
서브쿼리가 한건 이상이 나오면 오류를 발생시키는데, 이때 ANY 를 써주면 해결된다. 이는 여러 조건중 하나라도 만족하는 값 이면 추출한다는 의미이다.

all은 둘다 만족한 결과값을 출력한다는 의미이다.

order by는 정렬기준을 의미한다. 기본은 오름차순이다. 내림차순은 desc

distinct는 중복된 것은 하나만 남기기는 것을 의미한다.

limit 3
추출 개수에 제한값을 걸어주는 것이다.

create table (select ~)
SELECT 문에서 추출한 결과를 테이블로 바로 생성한다.

집계함수 sum
결과값의 합계를 반환한다.

group by
특정 조건으로 동일 값들을 하나로 그룹짓는다.

별칭은 as 별칭이름

group관련된 조건은 where이 아니라 having함수를 써야 한다.

rollup
그룹별 소계를 나타낼 때 사용하는 함수이다.

쿼리문 기본적인 순서

select
	from
	where
	groupby
	having
	orderby
	limit

sql분류
dml,ddl,dcl

dml: crud

ddl : 테이블이나 뷰등 create,drop,alter

dcl : 사용자권한 grant,revoke,deny

Auto Increment
Null을 넣어주면 자동으로 1부터 들어간다.

update문

update '테이블이름'
set '열1=값1'
where = ' '

delete문

delete from table where 조건;

#필요한 값까지 삭제될 사고가 있으니 where문 이나 limit을 꼭 걸어줄것!

with, cte - 비재귀적
with구문을 이용하여 CTE절을 사용해보았다.
CTE는 주로 복잡한 쿼리문에서 코드의 가독성과 재사용성을 위해 파생테이블 대신 사용하기에 유용하다.

보이는 것과 같이 ()안의 구문을 abc라는 테이블로 지정하고, 이를 통해 값을 추출하는 것을 볼 수 있다. 기존에 중첩된 조건절보다 훨씬 더 가독성있는 모습을 볼 수 있다.

profile
백엔드 & 전공 공부

0개의 댓글