컬럼 between A and B
컬럼값이 A와 B사이에 있는 결과만 조회
컬럼 in(A,B,C...)
컬럼값이 A,B,C 인 것을 모두 조회
Product 테이블에서 Name이 A로 시작하는 행만 조회
select * from Product
where Name like 'A%';
EX) 1.2를 반올림
select round(1.2);
Ex) 1번 칸에 alphabet a가 있고 2번 칸에 alphabet b가 있을때 group_concat()을 사용하면
alphabet a,b로 출력할 수 있다.
그룹핑은 특정 컬럼을 기준으로 그룹을 나누어 모든 행을 하나의 그룹으로 편입시켜 그룹별로 집계 할 때 사용.
예를 들어 ~별 ~결과를 봐야할때 그룹핑을 사용한다고 생각하면 된다.
select country, count(country)
from customers
group by country
select country, city, count(ctiy)
from cunstomers
group by country,city
테이블에 부적절한 데이터가 입력되는 것을 막아 데이터 무결성(Integrity)을 유지하는 규칙
제약조건에는 여러가지가 있다. 그중 대표적으로
NOT NULL : 열에 NULL 값이 들어오는 것을 금지
UNIQUE: 열의 모든 값이 중복 없이 유일
PRIMARY KEY (기본키): 각 행을 고유하게 식별하며 NOT NULL과 UNIQUE 조건을 동시에 만족
create table number(
id int unsigned not null primary key
);
이런식으로 작성된다.
특정 문자로 시작여부, 끝나는지 여부, 포함하는지 여부
찾고자하는 문자열을 %기호와 조합해서 사용, 여기서 %는 나머지 문자를 의미한다.
Ex) Employees 테이블에서 LastName이 D로 시작하는 행만 조회
select * from Employees
where LastName like 'D%';
Employees 테이블 LastName이 D로 시작하는 않는 행만 조회
select * from Employees
where LastName not like 'D%';
substr(대상문자, 시작위치, 자르는길이)
Ex) 문자열 taejincha 를 1번째 문자부터 6개 짜르기
select substr('jinsukim',1,6) as firstName;
Employees 테이블에서 BirthDate 컬럼의 모든 값을 1번째 문자부터 4개 짜르기(년도만 나오게 하기)
select substr(BirthDate,1,4) as 'year' From employees;
- 원자성 : 트랜잭션이 모두 데이터베이스에 반영되던가 전혀 반영되지 않아야 한다.
- 일관성 : 작업 결과과 항상 일관성이 있어야한다.
- 독립성 : 어떤 하나의 트랜잭션이라도 다른 트랜잭선의 연산에 끼어들 수 없다는 점
- 영구성 : 결과는 영구적으로 반영되어야 한다.