TIL 240108

hyeo71·2024년 1월 8일
0

2024 내배캠 AI 트랙

목록 보기
1/108

SQL 1주차 강의

데이터 조회하기

데이터를 조회하는 기본적인 구조는 아래와 같다.

SELECT 컬럼명
FROM 테이블명

컬럼명에는 전체를 뜻하는 *를 사용할 수 있고 컬럼명 여러개(컬럼1, 컬럼2 ...)를 사용할 수 있다.

컬럼명과 테이블명은 as(alias) 또는 띄어쓰기를 사용해 이름을 바꿔서 사용할 수 있다.
영문과 '_'은 따옴표를 사용하지 않지만 한글과 특수문자를 사용하려면 따옴표로 감싸줘야한다.

SELECT 컬럼명 as col
SELECT 컬럼명 col
SELECT 컬럼명 as '컬럼컬럼명'
SELECT 컬럼명 '컬럼컬럼명'


조건을 사용한 데이터 필터링

WHERE 문을 사용해서 조건에 맞는 데이터를 필터링할 수 있다.

SELECT 컬럼명
FROM 테이블명
WHERE 조건문

조건으로 문자를 사용할 경우 ' '(따옴표)를 사용해야 한다.

비교연산자

조건으로는 비교연산자를 사용할 수 있다.

비교연산자
>, >=초과, 이상
<, <=미만, 이하
<>같지 않다

<> 기호와 같은 의미로 !=를 사용해도 된다.

비교연산자 외의 조건

조건문
BETWEEN A and BA와 B 사이
IN포함
LIKE비슷한 값

BETWEEN 조건문은 범위를 지정하는 조건이지만 범위가 아닌 특정 숫자, 특정 단어 중 어느 하나에 포함되는지를 조건으로 하고 싶을 때 IN 조건문을 사용한다. 이 때 괄호를 사용하는 경우가 있다.

SELECT 컬럼명
FROM 테이블명
WHERE 컬럼명1 in (값1, 값2, 값3)

IN 조건문은 괄호 안의 값이 해당 컬럼의 데이터값과 똑같을 때만 사용가능하기 때문에 그 외의 특정 문자로 시작하거나 특정 문자를 포함, 특정 문자로 끝나는 값을 사용할 때 LIKE 조건문을 사용한다.
LIKE 조건문은 주로 ' % ' 를 사용한다.

컬럼 LIKE ' % '
컬럼 LIKE 'apple%'apple로 시작하는 데이터
컬럼 LIKE '%apple%'apple을 포함하는 데이터
컬럼 LIKE '%apple'apple로 끝나는 데이터

조건을 여러개 사용할 때

위의 경우처럼 조건을 한 개만 적용하는 것이 아닌 여러개 주고 싶을 때는 논리연산자를 사용한다.

논리연산자조건문
AND조건문1 AND 조건문2
OR조건문1 OR 조건문2
NOTNOT 조건문

1주차 끝& 숙제

상품 준비시간이 20~30분 사이인, 한국음식점의 식당명과 고객번호를 조회하는 쿼리를 작성해보세요

SELECT : 식당명, 고객번호
FROM : 상품 준비시간, 음식점 타입, 식당명, 고객번호 컬럼을 가지고 있는 테이블
WHERE : 상품 준비시간이 20~30, 한국음식점

SELECT restaurant_name '식당명',
customer_id '고객번호'
FROM food_orders
WHERE food_preparation_time BETWEEN 20 and 30
and cuisine_type ='Korean';

SQL 문제 1번

이름이 있는 동물의 아이디
이름이 있는 동물의 ID를 조회하는 SQL 문을 오름차순으로 작성해주세요.

SELECT ANIMAL_ID
FROM ANIMAL_INS
WHERE NAME IS NOT NULL

이름이 있는지 없는지만을 판단하면 되기 때문에 NAMENULL 값을 가지지 않는 동물의 ID를 조회하여 해결
MySQL 은 default 가 오름차순이라 따로 ORDER BY는 사용하지 않음

0개의 댓글