SeSac (2021-08 ~ 2021-12)/MySQL
MySQL 07 - 내장함수와 트랜잭션(Transaction)
배워도끝이없네
2021. 8. 27. 15:18
데이터베이스들은 기본적으로 가지고있는 내장함수가 있다.
sum(컬럼) : 합치기
avg(컬럼) : 평균값
min(컬럼) : 최소값
max(컬럼) : 최대값
mod(컬럼,나눌수) : 나머지값
count(컬럼) : 레코드 수
stdev : 표준편차
var_samp : 분산편차
cast("바꿀 자료" as 자료형) : 형변환
convert("바꿀자료, 자료형) : 형변환 // cast와 같음
str_to_date("시간문자열", "%Y-%m-%d"); : 문자열을 시간으로 변환
concat('문자열','문자열') : 문자열을 결합시킨다.
concat_ws('구분자','문자열','문자열'...) : 구분자를넣어 문자열을 결합시킨다.
group_concat(컬럼) : group by일 때 컬럼에 해당하는 모든 자료를 다 넣어서 합쳐준다
IF(식,참일때,거짓일때) : if로 값을 생산한다.
ifnull(컬럼,넣을값) : 컬럼이 널이면 값을 넣는다.
Commit & Rollback
show variables like '%commit%'; : 커밋에 관한 정보들을 볼 수 있다. (오토커밋 확인가능)
START TRANSACTION; : 선언시 커밋을할때까지 오토커밋이 풀린다.
commit하기전에는 자기 세션에만 변경사항이 저장되어있다가 commit하면 실제 db에 적용이 된다
(다른사람들이 커밋전에는 내가 변경한 사항을 볼 수 없음)
*트랜젝션은 세션단위로 제어됨!!!
ROLLBACK : 트랜잭션시점으로 데이터 초기화를 한다.