[데이터리안 | 입문반25기] Week 1

sookyoung.k·2024년 1월 17일
0
post-thumbnail

📤 데이터 추출 SELECT, FROM, LIMIT

데이터의 구조

  • 테이블(table): 표
  • 로우(row): 행, 데이터
  • 컬럼(colum): 열, 각각의 데이터가 가지고 있는 특성

✔️ 보고 싶은 데이터 꺼내기

1. 모든 데이터를 가져오기 (SELECT, FROM, LIMIT)

SELECT * FROM (테이블명) LIMIT (제한할 숫자)

* * (asterisk, 애스터리스크)는 전체 데이터를 한 번에 가져올 때 사용한다

2. 일부 열만 가져오기

SELECT (가져올 컬럼명)[, (가져올 컬럼명)] FROM (테이블명) LIMIT (제한할 숫자)

3. 중복 없는 데이터 가져오기 (DISTINCT)

SELECT DISTINCT (컬럼명)[, (컬럼명)] FROM (테이블명) LIMIT (제한할 숫자)

4. 가져오고 싶은 컬럼의 이름 바꾸기 (AS)

SELECT (가져올 컬럼명) AS (바꿀 이름) FROM (테이블명) LIMIT (제한할 숫자)

🔎 데이터 필터링하기 (WHERE)

기본
SELECT * FROM (테이블명) WHERE (컬럼명) = '(뽑고 싶은 데이터 조건)

✔️ 조건에 맞는 데이터 검색하기 (WHERE)

1. 비교연산자 (=, >, >=, <, <=, <>, !=)

SELECT * FROM (테이블명) WHERE (컬럼명) >[비교연산자 사용] '(데이터 조건)

2. 논리연산자 (AND, OR)

SELECT * FROM (테이블명) WHERE (컬럼명) = '(데이터 조건) OR (컬럼명) = '(데이터조건)'`

  • 0R: 또는, 합집합
  • AND: 그리고, 교집합

3. 여러 개의 데이터 한 번에 찾기 (IN, BETWEEN)

SELECT * FROM (테이블명) WHERE (컬럼명) IN ('데이터1', '데이터2')

: 데이터 1과 데이터 1에 있는 값을 찾아오기

SELECT * FROM (테이블명) WHERE (컬럼명) BETWEEN (데이터1) AND (데이터2)

: 이상 이하의 값 찾아오기 → 비교연산자와 논리연산자를 사용할 수도 있다

4. 값이 없는 데이터 찾기(ISNULL, IS NOT NULL)

SELECT * FROM (테이블명) WHERE (컬럼명) = IS NULL
SELECT * FROM (테이블명) WHERE (컬럼명) = IS NOT NULL

5. 패턴에 맞는 문자 찾기 (LIKE, NOT LIKE)

SELECT * FROM (테이블명) WHERE (컬럼명) LIKE '%(조건)%'
SELECT * FROM (테이블명) WHERE (컬럼명) NOT LIKE '%(조건)%'

  • %(조건) : 조건으로 끝나는 말
  • (조건)%: 조건으로 시작하는 말
  • %(조건)%: 조건을 포함하는 말

➡️ SQL 정규표현식(SQL regular expression)을 통해서 좀 더 복잡한 문자열 패턴의 데이터를 뽑아낼 수도 있다

5-1. LIKE 이스케이프 문자 '\'

LIKE 구문에서 '%', '_'(아무 문자 한 개)는 특별한 용도로 사용되는 기호다.
하지만 이 기호 자체를 문자열로 사용하고 싶다면 이스케이프 문자 '\'를 이용하면 된다.

\%, \_ → 이렇게 이스케이프 문자를 앞에 붙여주면 문자열 자체로 사용할 수 있다.

⚠️ WHERE절 필터링 시 주의할 점

* WHERE절 조건에서 비교하는 값으로 문자열이 쓰일 때에는 일반적으로 반드시 대소문자를 구분해야 한다

  • SELECT, FROM, WHERE, ORDER BY와 같은 예약어는 대문자
  • 컬럼명이나 테이블명은 DB에 정의된 대소문자 그대로

💂🏻‍♀️ 데이터 순서 정렬하기 ORDER BY

1. 정렬 조건이 1개일 때

SELECT * FROM (테이블명) WHERE = (데이터) ORDER BY (컬럼명) DESC

  • ASC: 오름차순 (디폴트라 생략 가능)
  • DESC: 내림차순

2. 정렬 조건이 2개 이상일 때

SELECT * FROM (테이블명) WHERE = (데이터) ORDER BY (컬럼명1) DESC, (컬럼명2)

➡️ 맨 앞에 있는게 최우선 적용되는 정렬기준, 그 다음 정렬 기준들은 콤마를 찍고 이어 적음

✂️ MySQL 문자열 자르기, 붙이기

♟️ 문자열 자르기

  • LEFT(컬럼명 또는 문자열, 왼쪽에서 잘라낼 문자의 길이): 왼쪽에 있는 문자열 가져오기
  • RIGHT(컬럼명 또는 문자열, 길이): 오른쪽에 있는 문자열 가져오기
  • SUBSTRING(컬럼 또는 문자열, 시작위치[, 길이]) 또는 SUBSTR(컬럼명 또는 문자열, 시작위치[, 길이]): 문자열 자르기

♟️ 문자열 붙이기

  • CONCAT(): 문자열 붙이기 (* null
    이 들어갈 경우 결과값은 null이 나온다)

♟️ 소수점 처리

  • ROUND(값, 반올림 기준): 소수점 반올림 (* 반올림 기준을 지정하지 않을 경우 소수점 첫 번째 자리를 사용한다)
  • CEILING(값), CEIL(숫자): 소수점 올림 (* 무조건 올림 처리를 사용하기 때문에 자릿수 지정이 없다)
  • FLOOR(값): 소수점 내림 (* 얘도 무조건 버림이기 때문에 자릿수 지정이 없다)
  • FORMAT(값, 표시할 자릿수): 숫자를 반올림하고 '#,###,###.##' 형태로 보고 싶을 때
profile
영차영차 😎

0개의 댓글