2025-4-11 18일차

심서진·2025년 4월 11일

수업 정리

AS(ALIAS)

별명을 짓는 것

EX)SELECT id AS 게시글번호
,regDate
,title
FROM article;
id -> 게시글번호

IN();

SELECT *
FROM article
WHERE id IN (2, 4, 6);
id의 값이 2,4,6이면 가져와

NOT IN

SELECT *
FROM article
WHERE id NOT IN (2, 4, 6);
id의 값이 2,4,6아닌 걸 가져와

  • ROUND
    소수점 첫 번째 자리에서 반올림
    SELECT ROUND(1.6);
    결과값 2

  • CEIL
    올림
    SELECT CEIL(1.4);
    결과값 2
    0은 안 올리고 1이라도 존재하면 무조건 올림

  • FLOOR
    소수점 뒤에있는 숫자 버림
    SELECT FLOOR(1.4);
    결과값 1

  • CONCAT
    문자 이어붙이기
    SELECT CONCAT('qweqwe','_asdasd')
    FROM article;
    결과값 qweqwe_asdasd

  • SUBSTR
    시작지점부터 몇 개 자르기
    SELECT SUBSTR('abcdefg',1, 4);
    1번 자리부터 4개 자르기
    결과값 abce

    SELECT SUBSTR('abcdefg',5, 2);
    결과값 ef

  • REPLACE
    특정 문자를 내가 지정한 문자로 변경
    SELECT REPLACE(NOW(), 2, 'e'):
    결과값

  • ADDDATE
    DATE_ADD 의 동의어로 지정한 날짜에 EXPR 를 더한 값을 반환하는 역할

  • DATEIFF
    두 날짜 사이의 차이를 반환하는 함수


집계함수

SELECT SUM(hit) FROM article;

SUM : 총합
결과값 175

AVG : 평균
결과값 29.1667

MAX : 최대값
결과값 100

MIN : 최소값
결과값 0

COUNT : 데이터의 갯수
결과값 6
보통 PK를 가지고 COUNT를 많이 함

SELECT DISTINCT(nickname) FROM article;
DISTINCT : 중복 제거
결과값
무명
홍길순
홍길동
임꺽정


GROUP BY(그룹화)

같은 데이터를 하나로 묶는 것 = 집계를 할 수 있게 만들어주는 것
GROUP BY 그룹으로 묶고 싶은 컬럼명칭;

결과값

select절에 적힌 컬럼들 중에서 집계함수가 사용된 컬럼을 제외하고는 group by절에 명시를 해야한다
위의 원칙을 지킬 때 select절에 명시된 순서와 group by절에 명시하는 순서도 같아야 한다(이 원칙은 굳이 지키지 않아도 됨/필요에 따라 자기가 알맞게 하면 됨)


HAVING(조건절)

WHERE절도 똑같은 조건 절이지만 그룹화를 진행하기 전에만 사용할 수 있음
HAVING는 그룹화를 진행하고 난 후에만 사용 가능


0개의 댓글