TIL_230428 - MySQL(JOIN 전까지)

정윤숙·2023년 4월 28일
0

TIL

목록 보기
154/192
post-thumbnail

📒 오늘의 공부

1. MySQL

기본 문법(JOIN 전까지)

INSERT INTO

INSERT INTO table_name (column1, column2, column3, ...)
VALUES (value1, value2, value3, ...);
  • 각 행마다 값 추가 하기
  • 값을 추가하지 않은 행에는 null이 입력 됨
INSERT INTO table_name
VALUES (value1, value2, value3, ...);
  • 모든 행에 값 추가하기

UPDATE

UPDATE table_name
SET column1 = value1, column2 = value2, ...
WHERE condition;
  • WHERE를 쓰지 않으면 해당 테이블의 전체 값이 변경 됨

     UPDATE Customers
     SET PostalCode = 00000
     WHERE Country = 'Mexico';
    • Country가 'Mexico'인 PostalCode를 모두 00000로 변경

DELETE

DELETE FROM table_name WHERE condition;
  • 해당 조건의 데이터 삭제하기
DELETE FROM table_name;
  • 테이블 자체는 삭제하지 않고 테이블에 존재하는 모든 열(row) 삭제하기

LIKE

SELECT column1, column2, ...
FROM table_name
WHERE columnN LIKE pattern;
  • 해당 문자로 시작하지 않는 데이터 구할 때
    • NOT LIKE
      -> WHERE CustomerName NOT LIKE 'a%'

Wildcards

  • LIKE연산자와 같이 쓰임
SELECT * FROM Customers
WHERE CustomerName LIKE '_r%'
  • 두 번째 문자열이 r로 시작하는 데이터 구하기
WHERE CustomerName LIKE 'a_%_%'
  • a로 시작하는 3글자 이상의 데이터 구하기

IN

  • WHERE에서 여러 값을 선택할 때
SELECT column_name(s)
FROM table_name
WHERE column_name IN (value1, value2, ...);
SELECT * FROM Customers
WHERE Country IN (SELECT Country FROM Suppliers);
  • Suppliers의 Country와 같은 Country에 해당하는 Customers 구하기
  • 세 나라를 제외한 Customers 구하기
    • NOT IN
      SELECT * FROM Customers
      WHERE Country NOT IN ('Germany', 'France', 'UK');

LEFT

  • 왼쪽에서 문자열 자르기
SELECT LEFT(Country,1), COUNT(*) 
  FROM Customers
  group by LEFT(Country,1)
  • 나라의 앞글자에 해당하는 알파벳별 개수 구하기

참고

MySQL_w3schools
MySQL_w3schools 연습
SQL문법 정리_내 블로그
SQL 문자열 자르기

profile
프론트엔드 개발자

0개의 댓글