[MySQL] 기본 구조, ALIAS, WHERE

Lake·2024년 4월 8일
0

SQL

목록 보기
1/6
post-thumbnail

SQL이란?

SQL의 정의에 대해서 ChatGPT에게 물어보았다.

구조화된(Structed) 질의(Query) 언어(Language) = 데이터베이스와 대화를 하기 위한 언어로 이해하면 될듯 하다.

용어

테이블(table) = 표
컬럼(column) = 열(필드)

기본 구조

  SELECT *
  FROM 테이블이름

SELECT : 말 그대로 선택. SELECT 다음에 오는 컬럼을 선택함. ,를 사용해 여러 컬럼 동시에 선택 가능.

* : 모든 컬럼

FROM : FROM 다음에 나오는 테이블에서부터 가져옴

예)

  SELECT order_id, restaurant_name
  FROM food_orders

order_id 컬럼과 restaurant_name 컬럼을 선택(select)함
food_orders라는 이름의 테이블에서부터(from)

Alias(별명)

- 방법1 : 컬럼1 as 별명1
- 방법2 : 컬럼2 별명2

예)

  SELECT 
  order_id as ord_no,
  restaurant_name "식당 이름"
  
  From food_orders
  • order_id → ord_no
  • restaurant_name → 식당 이름

WHERE(필터링)

  SELECT *
  FROM 테이블
  WHERE 필터링 조건

예)

  SELECT *
  FROM customers
  WHERE age=21

필터링 조건

BETWEEN : a 와 b 사이
기본 문법 : BETWEEN a AND b

예)
나이가 10 과 20 사이

  WHERE age BETWEEN 10 AND 20

IN : ‘포함’ 하는 조건 주기
기본 문법 : IN (a, b, c)

예1)
나이가 15, 21, 31 세인 경우

  age IN (15, 21, 31)

예2)
음식 종류가 한식, 일식인 경우

  cuisine_type IN ('Korean', 'Japanese')

LIKE : 완전히 똑같지는 않지만, 비슷한 값을 조건으로 주기

  1. 특정한 문자로 시작하는 경우
    기본 문법 : LIKE ‘시작문자%’

    예)
    ‘김’ 으로 시작하는 이름

  name like '김%'
  1. 특정한 문자를 포함하는 경우
    기본 문법 : LIKE ‘%포함문자%’

    예)
    식당 이름에 ‘Next’ 를 포함하는 경우
  restaurant_name LIKE '%Next%'
  1. 특정한 문자로 끝나는 경우
    기본 문법 : LIKE ‘%시작문자’

    예)
    ‘임’ 으로 끝나는 이름

  name LIKE '%임'

비교연산자

SQL 쿼리 처음 작성해본 자의 TMI :
1. 파이썬이나 R이랑은 비슷하면서도 다른 것 같아서 신기하다.
2. 그동안 큰따옴표/작은따옴표 구분 잘 안하고 큰따옴표 하나로 통일해서 써오고 있었는데 찾아보니 구분해서 써야 할것 같다.(링크참조)
https://stackoverflow.com/questions/1992314/what-is-the-difference-between-single-and-double-quotes-in-sql
3. DBeaver 라는 툴 자체를 처음 써보는데 얘 FROM 테이블 명 입력할 때 습관땜시 몇자 치고 탭 누르는데 Alias가 바로 적용되서 뜬다...!(띠용,,,)
이를테면, FROM fo까지만 치고 탭 갈기면

FROM food_orders fo

이렇게 튀어나온다. 설정 차이인 것 같긴 한데 한번 찾아봐야겠다. 보통은 어떻게 설정해 놓고 쓰려나?

0개의 댓글