SQL 기본 쿼리문 정리

Lys·2023년 11월 21일
0

데이터베이스

목록 보기
3/18

SQL(Structured Query Language)

데이터베이스 용 프로그래밍 언어를 말한다. SQL은 구조화 된 쿼리 언어이며,데이터베이스에 쿼리를 보내 원하는 데이터를 가져오거나 삽입할 수 있다.

SQL 특징

  • 선언적 언어이다.
    • 명령어를 이용해 결과를 도출하는 것이 아니라 원하는 결과를 명시하고 그 결과를 얻는 방식의 언어이다.
  • 데이터의 삽입,수정,삭제,검색 및 관리를 위한 다양한 기능을 제공한다.
  • 데이터베이스의 구조를 정의하는 명령어를 제공한다.
    • 테이블,뷰,인덱스 등 데이터베이스 구조를 정의하고 수정하는 명령어가 포함된다.
  • 데이터베이스에 대한 보안 기능을 제공한다.

    SQL 장점

  • 직관적인 구문과 명령어를 사용하여 복잡한 데이터 검색 및 조작을 상대적으로 쉽게 수행할 수 있다.
  • 데이터 간의 관계를 설정하여 데이터의 일관성을 유지할 수 있다.
  • 데이터를 효율적으로 관리할 수 있다.

    SQL 단점

  • 다중 조인,서브쿼리 등을 사용하는 복잡한 쿼리를 작성할 때 쿼리를 최족화 하는 것이 어려울 수 있다.
    (다중 조인이 있는 쿼리에서는 실행 계획을 최적화 하는 것이 좋다.)
  • 대규모 데이터 처리에서 SQL을 처리 속도가 느려질 수 있다.

SQL 쿼리문

  • SELECT
    데이터베이스를 불러오는 기능을 한다.(조회기능)
    select 컬럼명1,컬럼명2, from 테이블명; -- 컬럼1,컬럼2 조회
    select * from 테이블명; -- 테이블의 모든 컬럼 조회 
  • SELECT문 순서
    select 컬럼명
      From 테이블명
      WHERE 조건식
      GROUP BY 컬럼명
      HAVING 조건식
      ORDER 컬럼명 
  • DISTINCT
    SELECT와 함께 사용되며 중복 되지 않는 유일한 값만 조회한다.
    SELECT DISTENT 컬럼명1,컬럼명2 FROM 테이블명;
  • WHERE
    SELECT와 함께 사용하며 원하는 값만 가져오고 싶을 때 사용한다.
    SELECT column_menu FROM 테이블명
    WHERE column_menu = '김치찜'; 
  • ORDER BY
    데이터 정렬시 사용한다.
    SELECT  * FROM 테이블명
    ORDER BY 컬럼명1;
    -- ASC : 오름차순(생략 시 기본값)
    -- DESC : 내림차순
    SELECT  * FROM 테이블명
    ORDER BY 컬럼명1, 컬럼명2;
    -- 컬럼명1로 정렬 후 그 값을 바탕으로 컬럼명2로 정렬
  • GROUP BY
    그룹화 하여 데이터를 조회한다. 보통 집계함수와 같이 쓰인다.
    SELECT gener, AVG(price) AS "평균"
    FROM library
    GROUP BY gener;

  • 집계함수
    • SUM() : 컬럼의 함계를 반환
    • AVG() : 컬럼의 평균을 반환
    • MIN() : 컬럼의 최소값 반환
    • MAX() : 컬럼의 최대값 반환
    • COUNT) : 행의 개수를 반환
    • COUNT(DISTINCT) : 중복 된 값을 제거 하고 행의 개수를 반환

  • HAVING
    그룹화 된 데이터에 대해서 조건을 제한한다.
    SELECT gener, AVG(price) AS "평균"
    FROM library
    GROUP BY gener
    HAVING  AVG(price) > 조건 값
  • INSERT INTO
    테이블안에 새로운 데이터를 삽입할 때 사용
    INSERT INTO 테이블명(컬럼명1,컬럼명2,컬럼명3)
    VALUE(1,2,3);
    --컬럼명의 수보다 값의 수가 적으면 나머지 값은 NULL로 처리 된다.
  • UPDATE SET
    테이블 안 데이터를 수정할 때 사용된다.
    UPDATE 테이블명
    SET 컬럼명1 =2, 컬럼명2 =2;
  • DELETE
    테이블 안 데이터 삭제시 사용된다
    DELECT FROM 테이블명
    WHERE 컬럼명1 =2;
    -- UPDATE 떄 WHERE 조건문을 쓰지 않으면 테이블 전체 데이터가 삭제된다.

🙇‍ 참고 사이트 🙇‍

https://velog.io/@juunghunz/%EB%8D%B0%EC%9D%B4%ED%84%B0%EB%B2%A0%EC%9D%B4%EC%8A%A4-SQLTIL-2021.08.26
https://acdongpgm.tistory.com/69
https://rachel0115.tistory.com/entry/SQL-%EA%B8%B0%EB%B3%B8-%EB%AC%B8%EB%B2%95-%EC%A0%95%EB%A6%AC-SELECT-%EC%A0%88
https://prmblogs.tistory.com/30

0개의 댓글

관련 채용 정보