mySQL

nhwang·2022년 4월 1일
0

내부적 실행 순서
From > connect by > where > group by > having > select > order by

WHERE : IN 사용 시 내부적이로 SELECT 가능함 BETWEEN은 두 값 사이, IN 은 여러값 (,,)로 받을 수 있음
예) WHERE c_name IN (SELECT ~~~)

LIMIT : TOP으로 사용가능

DISTINCT : 중복 제거

CASE WHEN ~ THEN ELSE ~ END : 특정 부분 선택하고 싶을 때 사용가능

COUNT(c_name) : 숫자 셈. 집계함수라 WHERE이랑은 쓰일 수 없음. 대신 HAVING과 가능
ㄴ>where이랑 따로는 쓰일 수 있다 (예) :

SELECT ANIMAL_TYPE, COUNT(*          ) AS count from ANIMAL_INS WHERE ANIMAL_TYPE = 'Cat' OR ANIMAL_TYPE = 'Dog' GROUP BY ANIMAL_TYPE ORDER BY ANIMAL_TYPE;

다만, where (COUNT(NAME) ~~~ >=2) 이런거는 못쓴다는 뜻

GROUP BY : 컬럼별로 셀렉해서 로우에 보여주던 것을 그룹바이로 지정한 것이 로우에 오게끔 해주는 기능

HAVING : WHERE과 유사하나 집계함수 내에서 사용함.

ASC/DESC : 오름, 내림차순

MIN/MAX : 동일

INSTR : 문자열 내 확인

DATE_FORMAT (c_name, '%y-%m-%d') : 데이트 계열 타입 포맷

LIKE : 문자열 포함 여부 확인
예) WHERE (ANIMAL_TYPE = 'Dog') AND (NAME LIKE '%el%')

from A JOIN B : A,B모두 테이블만 오는게 아니라 내가 선택해서 붙힐 수 있음
예)
from A JOIN (SELECT HOST_ID from PLACES GROUP BY HOST_ID HAVING COUNT(HOST_ID) >= 2) AS B
ON A.HOST_ID = B.HOST_ID

참고

국문 - mySQL
영문 - mySQL

profile
42Seoul

0개의 댓글