여러 문자열을 하나로 합치거나 연결해주는 함수
SECELT CONCAT('string1', 'string2', ...);
칼럼이나 테이블 이름에 별칭 생성하는 함수
SELECT column as(ALIAS의 약자) alias(별칭이름)
FROM tablename;
select concat('이름:', name, ', 소속사:', agency) as '연예인정보'
from celeb
where name like '___';
SELECT column1, column2, ...
FROM tablename as alias;
SELECT CONCAT(s.season, '-', s.episode, '(', s.broadcast_date, ')' ) AS '방송정보,
CONCAT(c.name, '(', c.job_title, ')' ) AS '출연자정보'
FROM celeb AS c, snl_show AS s
WHERE c.name = s.host;
==== AS 는 생략도 가능 ======
SELECT CONCAT(s.season, '-', s.episode, '(', s.broadcast_date, ')' ) '방송정보,
CONCAT(c.name, '(', c.job_title, ')' ) '출연자정보'
FROM celeb c, snl_show s
WHERE c.name = s.host;
==>
방송정보 | 출연자정보
8-7(2020-09-05) | 강동원(영화배우, 텔런트)
select c.agency as '소속사 정보', concat('나이:', c.age, '(', c.sex, ')') as '신상정보',
concat(s.season, '-', s.episode, ', 방송날짜 : ', s.broadcast_date) as '출연정보'
from celeb as c, snl_show as s
where c.name = s.host and agency like '__엔터테인먼트'
order by s.broadcast_date desc;
검색한 결과의 중복 제거
SELECT DISTINCT column1, column2, ...
FROM tablename;
예) 연예인 소속사 종류를 검색 - 중복 포함
SELECT agency FROM celeb;
예) 연예인 소속사 종류를 검색 - 중복 제외(distinct)
SELECT DISTINCT agency FROM celeb;
예) 가수 중에서, 성별과 직업별 종류를 검색 - 중복 포함
SELECT sex, job_title FROM celeb WHERE job_title LIKE '%가수%';
예) 가수 중에서, 성별과 직업별 종류를 검색 - 중복 제외
SELECT DISTINCT sex, job_title FROM celeb WHERE job_title LIKE '%가수%';
검색 결과를 정렬된 순으로 주어진 숫자만큼만 조회
SELECT column1, column2, ...
FROM tablename
WHERE condition
LIMIT number;
예) celeb 데이터 3개만 가져오기
SELECT * FROM celeb LIMIT 3;
예) 나이가 가장 적은 연예인 4명 검색
SELECT * FROM celeb ORDER BY age LIMIT 4;
예) snl에 출연한 연예인의 정보를 최신 방송날짜 순으로 2개만 검색해서 다음과 같이 출력하세요
select concat ('snl 시즌', s.season, ' 에피소드', s.episode, ' 호스트 ', s.host) as 'SNL 방송정보', c.age
from snl_show as s, celeb as c
where s.host=c.name
order by c.age desc
limit 2;
-->
+-----------------------------------+------+
| SNL 방송정보 | age |
+-----------------------------------+------+
| snl 시즌8 에피소드8 호스트 유재석 | 50 |
| snl 시즌8 에피소드9 호스트 차승원 | 48 |
+-----------------------------------+------+