[제로베이스][SQL] Concat, Alias, Distinct, Limit

한결·2024년 1월 25일
post-thumbnail

CONCAT

여러 문자열을 하나로 합치거나 연결
SELECT CONCAT('string1', 'string2', ..);

mysql> select concat('concat',' ','test');


mysql> select concat('이름',name) from celeb;


ALIAS

칼럼이나 테이블 이름에 별칭 생성
SELECT column as alias
FROM tablename;

SELECT column1, column2, ...
FROM tablename as alias;

mysql> select name as '이름' from celeb;

mysql> select name as '이름', agency as '소속사' from celeb;


  1. name과 job_title을 합쳐서 profile 이라는 별칭을 만들어서 검색
mysql> select concat(name,' : ',job_title) as profile from celeb;


  1. snl_korea에 출연한 celeb을 기준으로 두 테이블을 조인하여, celeb 테이블은 c, snl_show 테이블은 s라는 별칭을 만들어서 출연한 시즌과 에피소드, 이름, 직업을 검색
mysql> select s.season, s.episode, c.name, c.job_title
    -> from celeb as c, snl_show as s
    -> where c.name = s.host;


  1. snl_korea 에 출연한 celeb을 기준으로 두 테이블을 조인하여 다음과 같이 각 데이터의 별칭을 사용하여 검색
  • 시즌, 에피소드, 방송일을 합쳐서 '방송정보'
  • 이름, 직업을 합쳐서 '출연자정보'
mysql> 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;


DISTINCT

검색한 결과의 중복 제거
SELECT DISTINCT column1, column2, ...
FROM tablename;

mysql> select distinct agency from celeb;


mysql> select distinct sex, job_title from celeb where job_title like '%가수%';


LIMIT

검색결과를 정렬된 순으로 주어진 숫자만큼만 조회

SELECT column1, column2, ...
FROM tablename
WHERE condition
LIMIT number;


mysql> select * from celeb limit 3;

profile
낭만젊음사랑

0개의 댓글