데이터 분석을 위한 기초 SQL

GreenBean·2021년 11월 2일
0
post-thumbnail

데이터 분석을 위한 기초 SQL

[백문이불여일타] 데이터 분석을 위한 기초 SQL
참고 링크 : w3schools

기초 SQL

  • DQL (Data Query Language) : 질의어
    • SELECT
  • DML (Data Manipulation Language) : 조작어
    • INSERT, UPDATE, DELETE

보고 싶은 데이터 꺼내오기

  • SELECT
  • FROM
  • LIMIT

  • 예약어(SQL에서 미리 설정해 놓은 문법을 위한 예약어)는 대문자로 쓰고 나머지 문자들소문자로 많이 쓰게 됨

조건에 맞는 데이터 검색하기

  • 비교연산자와 논리연산자
    • 비교연산자 : 특정 컬럼이 특정 값을 가지는 데이터만 불러오기 위해서 사용
      • =, <>, >=, >, <
    • 비교연산자로 값을 비교할 때 숫자 뿐만 아니라 문자도 비교 가능
      • WHERE customername < "B"
      • 알파벳 순서에 따라서 문자 "B" 이전에 오는 데이터들만 검색
    • 논리연산자
      • AND, OR

  • LIKE
    • 문자열의 패턴을 찾을 때 • 부분적으로 일치하는 칼럼을 찾을때 사용
      • WHERE country LIKE '%ma%'
      • 퍼센트(%) 기호는 어떤 것이 들어가도 혹은 안들어가도 상관 없다는 의미이며 '와일드카드(Wildcard)'라고도 부름
        • 패턴을 가지고 데이터들을 불러오고 싶은게 아니고 명확히 어떤 것만 가지고 오고 싶을 때에는 LIKE 말고 비교연산자 =를 사용해주는게 속도가 빠름
        • 퍼센트(%)를 검색하고 싶을 때에는 앞에 이스케이프 문자로 역슬래쉬(\)를 사용하면 됨
      • WHERE country LIKE 'B_____'
      • 언더바(_) 기호는 어떤 문자라고 특정해주지 않았지만 몇 개의 문자가 따라 나온다는 의미이며 '한 글자 와일드카드'라고도 부름
      • 언더바(_)를 검색하고 싶을 때에는 앞에 이스케이프 문자로 역슬래쉬(\)를 사용하면 됨

  • IN
    • WHERE country IN ('Brazil', 'France')

  • BETWEEN
    • WHERE customerid BETWEEN 3 AND 5

  • IS NULL
    • 테이블 내에 데이터가 입력 되지 않는 부분, 비어 있는 부분을 검색하기 위한 예약어
      • WHERE customerid IS NULL

  • DISTINCT
    • 중복된 값을 빼줄 때 사용
      • SELECT DISTINCT city

데이터 순서 정렬하기

  • ORDER BY
    • 위치 : SELECT 다음에 FROM 다음에 WHERE 다음에
      • ASC : 오름차순 (디폴트값)
      • DESC : 내림차순

MySQL 문자열 자르기

  • LEFT(컬럼명 또는 문자열, 문자열 길이)
    • SELECT LEFT("20140323", 4)
    • >>> 2014
  • RIGHT(컬럼명 또는 문자열, 문자열 길이)
    • SELECT RIGHT("20140323", 4)
    • >>> 0323

  • SUBSTRING(컬럼명 또는 문자열, 시작 위치, 길이) = SUBSTR()
    • SUBSTR("20140323", 1, 4)
    • >>> 2014
    • SUBSTR("20140323", 5)
    • >>> 0323

MySQL 소수점 처리

  • CEIL() : 올림
    • SELECT CEIL(5.5)
    • >>> 6
  • FLOOR() : 내림
    • SELECT FLOOR(5.5)
    • >>> 5
  • ROUND() : 반올림
    • ROUND(5.556901, 4)
    • >>> 5.5569

profile
🌱 Backend-Dev | hwaya2828@gmail.com

0개의 댓글