SQL 하나로 정리하기 : INTG 프로젝트
1번 : 독일의 인구 찾기
SELECT population FROM world
WHERE name='Germany'
2번 IN 사용 :(스웨덴 ,노르웨이, 덴마크)의 이름, 인구 출력
SELECT name,population FROM world
WHERE name IN ('Sweden','Norway','Denmark');
3번 BETWEEN ~ AND 사용 - 인구가 20만~25만 사이 국가 이름,영토 출력
SELECT name,area FROM world
WHERE area BETWEEN 200000 AND 250000
pattern matching strings
1번 LIKE, multicharacter wildcard(%)사용
SELECT name FROM world
WHERE name LIKE 'Y%' -- Y로 시작하는 이름
7번 LIKE,wildcard(%) 응용
SELECT name FROM world
where name LIKE '%a%a%a%' -- a가 세번이상 들어가는 국가
8번 LIKE,single character wildcard(%) 사용
SELECT name FROM world
where name LIKE '_t' -- 두 번째 글자가 t
12번 LIKE, CONCAT 사용
SELECT name FROM world
WHERE capital LIKE concat(name,' City') -- Mexico - Mexico City 같은 관계를 가진 수도 출력
15번 꽤 어려운 문제 - 수도가 국가이름의 확정인 경우, 국가이름과 확장된부분 출력
SELECT name,REPLACE(capital,name,'') AS extension FROM world
WHERE capital LIKE concat(name,' %')
OR capital LIKE concat(name,'-%');
NOT NULL : 해당 필드는 NULL 값을 저장할 수 없게 됩니다. INSERT 구문에서 해당 영역을 생략할 시, 기본값이 삽입됩니다.
UNIQUE : 해당 필드는 서로 다른 값을 가져야만 합니다.
PRIMARY KEY : 해당 필드가 NOT NULL과 UNIQUE 제약 조건의 특징을 모두 가지게 됩니다.
FOREIGN KEY : 하나의 테이블을 다른 테이블에 의존하게 만듭니다.
DEFAULT : 해당 필드의 기본값을 설정합니다.