Notice
Recent Posts
Recent Comments
Link
«   2024/11   »
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
Tags more
Archives
Today
Total
관리 메뉴

ultra_dev

SQL -2 본문

DB

SQL -2

ultra_dev 2023. 1. 13. 01:23

SQL

  • AUTO_INCREMENT로 id 알아서 증가시키면 null넣어줘도 증가함

  • CREATE
    • 테이블을 생성
    • CREATE 문의 기본 문법
    • CREATE TABLE 테이블_이름 ( 열_이름 데이터_타입, 열_이름 데이터_타입, 열_이름 데이터_타입, .... );
      • CREATE TABLE users (id INT, name CHAR(4), age INT);

  • INSERT:테이블에 데이터를 삽입
    • INSERT 문의 기본 형식 : INSERT INTO 테이블 [(열1, 열2, ...)] VALUES (값1, 값2, ...)
    • 열은 생략이 가능하지만 이 경우에는 테이블 정의할 때의 열 순서 및 개수와 동일해야 함 

      • 1. 열을 생략하여 순서 및 개수를 맞추는 경우
        INSERT INTO users VALUES (1, '벨라', 25);
        => 열을 명시하면 모든 열을 넣지 않아도 됨.
        => 대신 누락된 열들은 NULL 값으로 채워짐

        2. 열을 명시하는 경우
        INSERT INTO users (id, name) VALUES (2, '버즈');
        => 열을 명시하면 순서가 바뀌어도 됨 INSERT INTO store1 (name, age, id) VALUES ('제시', 20, 3);
      • AUTO_INCREMENT
        • 자동으로 증가하는 값
        • 반드시 PRIMARY KEY 로 지정해야 함
        • SQL
        • CREATE TABLE users ( id INT AUTO_INCREMENT PRIMARY KEY, name CHAR(4), age INT); INSERT INTO users VALUES (null, '보핍', 25); INSERT INTO users VALUES (null, '슬링키', 22);
      • INSERT INTO ~ SELECT
        • 다른 테이블의 데이터를 한번에 입력
        • SELECT 문의 열의 개수는 INSERT 할 테이블의 열 개수와 같아야 함
        • INSERT INTO 테이블_이름 (열_이름1, 열_이름2, ...) SELECT 문 ;
      
      
      -- world.city 테이블의 전체 행 갯수 출력
      
      SELECT COUNT(*) FROM world.city;
      
      
      
      -- 테이블 구조 보기
      
      DESC world.city;
      
      
      
      -- wolrd.city 테이블의 열 이름과 데이터 형식에 맞춤
      
      CREATE TABLE my_city (
            	name CHAR(35),
            	population INT
            );
      
      
      
      -- world.city 에서 name, population 데이터를 my_city에 추가
      INSERT INTO my_city
            	SELECT name, population
            		FROM world.city;
  • UPDATE
    • 기존에 입력되어 있는 값을 수정
    • UPDATE 문의 기본 형식
    • UPDATE 테이블_이름 SET 열1 = 값1, 열2 = 값2, ... WHERE 조건;

💡 여기서 잠깐! 워크벤치에서는 기본적으로 UPDATE 및 DELETE를 허용하지 않기 때문에 설정을 변경해야 함 !!

워크벤치의 메뉴에서 Preferences 메뉴를 찾아서 SQL Editor → Safe Updates (블라블라…) 를 언체크 하기.
그런 다음 워크벤치를 재시작 하기

 

- 앞에서 생성한 my_city 테이블의 도시 이름 중에서 ‘Seoul’ 을 ‘서울’ 로 변경 하려면?


    UPDATE my_city SET name = '서울' WHERE name = 'Seoul';
  • 데이터 삭제
    • DELETE
      • 테이블의 행 데이터를 삭제
      • DELETE 문의 형식
      • DELETE FROM 테이블_이름 WHERE 조건;
      • my_city 테이블에서 ‘New’ 로 시작하는 도시를 삭제 하려면? (힌트: LIKE)
      • DELETE FROM my_city WHERE name LIKE 'New%';
    • TRUNCATE
      • DELETE와 비슷하나 WHERE 문을 사용할 수 없음. 따라서 모든 행을 삭제
      • DELETE 보다 속도가 빠름
      • TRUNCATE TABLE 테이블_이름;
    • DROP
      • 테이블 자체를 삭제. 속도가 매우 빠름

'DB' 카테고리의 다른 글

DB 이것 저것 정리! (feat.SQL 실행순서..)  (0) 2024.01.19
DB Connection Pool !!  (0) 2024.01.04
Docker 내부 PostgresSQL Dump  (0) 2023.12.08
SQL -3  (0) 2023.01.13
SQL -1  (0) 2023.01.13
Comments