SQLD 최종 정리강의 1편 - SELECT문장 ~ 트랜잭션 관리 언어(TCL)

Поделиться
HTML-код
  • Опубликовано: 11 сен 2024
  • #SQLD #SQLD최종정리 #SQLD기출문제 #SQLD문제집 #SQLD풀이 #SQLD공부방법
    
    ▷ SQLP 자격증
    ▷ 서울대학교 공과대학 졸업
    ▷ 서울대학교 SCSC (Samsung Convergence Software Course) 프로그램 이수
    인강의 정보는, www.songscampu... 에서 확인해주세요.
    강의 정보는, blog.naver.com... 홈페이지에서 확인해주세요.

Комментарии • 69

  • @sqlp6559
    @sqlp6559  2 года назад +17

    38:00 수정 : Natural Join 사용시 Alias 사용 가능합니다. 참고 부탁드립니다.
    SQLD 강의 수강 안내 : www.songscampus.co.kr

  • @user-fu2ec1rq8p
    @user-fu2ec1rq8p Год назад +159

    1
    sql 명령문 개괄
    시험, 연산 순서 정렬하는 문제
    from - where - group by - having - select - order by
    종류 쓰는 문제
    dml> select, insert, delete, update
    ddl> alter 바꾸다, create, modify, drop
    tcl> rollback, commit
    dcl> grant, revoke

    select
    distinct(집약)
    중복된 값들은 중복 제거(집약) = 원하는 정보를 집약
    X
    distinct deptno, mgr = group by (deptno, mgr)
    as
    select
    1. as 생략 가능
    2. 컬럼명에 띄어쓰기
    ex. 직원 번호> "직원 번호"
    from
    1. as 사용불가
    concat
    - 연산자가 무슨 기호인가?
    + = sql server
    || = oracle
    - 인수가 무조건 2개?
    concat( , )
    논리연산자
    and
    or
    not
    - 의미
    - 연산순위
    1. not
    2. and
    3. or
    nao
    sql 연산자
    - between and
    a between 1 and 2 = 1 'A@_A'
    EECAPE> '@'
    // 와일드카드 앞에, @는 아무 문자 가능

    - ROWNUM(ORACLE), TOP(SQL SERVER)
    (WHERE) ROWNUM=1 포함
    (SELECT) TOP(N)(컬러명) 컬럼명 출력할 때 상위 N개
    - 시험,
    SELECT EMPNO, SAL
    FROM EMP
    WHERE ROWNUM 가장 마지막에 실행
    - NULL, 시험 5문제
    1. NULL의 정의
    부재, 모르는 값
    2. NULL의 산술연산
    = NULL
    2. NULL의 비교연산
    EX. NULL=NULL
    NULL=2
    > 알 수 없음(UNKNOWN)
    > WHERE(조건=UNKNOWN)> "FALSE"
    3. 정렬상의 의미
    오라클: 무한대
    SQL SERVER: 최소값, -무한대
    4. 25:19
    [NVL> 널뛰기, (값1. 값2)
    NVL2 (1, 2, 3)
    ISNULL] (1, 2)
    [NULLIF]> 같이 놀자! (1, 2)
    [COALESCE]> 널 아닌 첫번째 값 (1, 2 ~ 무한대)
    정렬 4문제
    1. 정렬의 정의, 특성
    - 가장 마지막에 실행
    - 성능이 느려질 가능성, 소팅 작업
    - 널값과의 관계
    2. 컬럼번호 정렬
    *출력되는 컬럼의 수 보다 큰 값 불허
    3. 인수 두개 정렬
    SAL DESC, ENAME ASC
    4. 출력되지 않는 컬럼명으로 정렬 가능
    SELECT ENAME
    ORDER BY SAL
    숫자 함수
    1. ROUND 자릿수
    ROUND(138.94, 인수)
    EX. 0.123~
    // 반올림 함수
    2. CEIL ORACLE/ CEILING SQL SERVER
    // 올림 함수
    문자열 함수
    1. UPPER/ LOWER 대/ 소문자
    2. LPAD, RPAD/ 공백 채우기, LTRIM, RTRIM/ 공백 제거
    3. SUBSTR/ 문자 추출, INSTR/ 문자 위치 찾기 실습하기
    날짜 함수
    1. TO_CHAR, TO_DATE 실습하기
    시험, 다음 중 데이터의 형 변환을 일으키는 함수?
    2. SYSDATE(ORACLE)
    GETDATE(SQL SERVER)
    3. 날짜 데이터+100? 100일 이후 , DAY로 인식
    DECODE/CASE
    CASE만 시험!
    CASE
    WHEN THEN 1
    WHEN THEN 2
    ELSE 3/ ELSE 없을 때, 1, 2 만족X> NULL
    AND
    집계함수, 시험 2-3문제
    1. NULL 과의 관계
    34:54
    SUM(A)// 열 계산, 널뛰기
    SUM(A+B+C)// 행 계산, NULL 연산
    SUM(A)+SUM(B)+SUM(C) VS
    SUM(A+B+C) 차이 기억
    GROUP BY
    집약 기능, WHERE 다음에 실행, 그룹 수준으로 정보를 바꾼다
    HAVING? 그룹에 대한 조건식
    JOIN
    1. NATURAL JOIN
    USING -
    > 중복된 컬럼 "하나"로 출력
    > 제일 앞에 등장
    > 테이블 ALIAS 사용 불가, 중요
    2. LEFT, OUTER JOIN
    EX. A LEFT OUTER JOIN B
    = A COL1(조인키) =B COL1(+)/ 반대
    선행 테이블이 선행 조건절 앞에, 후행 테이블은 후행 조건절 뒤에 있을 경우
    서브쿼리
    들어가는 위치 중요
    SELCET SCALAR
    FROM INLINE VIEW, 메인 쿼리의 컬럼 사용 가능
    WHERE 거의 모든 서브쿼리
    GROUP BY X
    HAVING 거의 모든 - > 중첩서브쿼리
    ORDER BY SCALAR
    2.
    SELECT
    FROM A
    WHERE SELECT
    FROM B COL
    = A COL1
    // A를 찾을 때 까지 = A COL1에 대입
    서브쿼리에는 값이 고정 COLL = A
    3.
    IN
    ANY/ SOME
    ALL
    EXIST 존재하다
    모든 문자 출력 가능> TRUE
    (0ROWS)> FALSE
    집합연산자 46:38
    UNION 합집합
    INTERSECT 교집합
    MIINUS(SQL SERVER> EXCEPT )
    정렬 작업 존재, 느리다
    UNION ALL> 중복 데이터 존재
    정렬 작업X, 빠르다
    UNION과 UNION ALL의 비교 , 누가 빠르냐?
    DDL
    TCL과 연관지어 생각
    1.
    TRUNCATE VS DROP
    입주민 퇴거/ 철거
    구조(로그 데이터, 이전 기억 정보)가 남음/ 구조 삭제
    TRUNCATE VS DELETE
    > DDL VS DML
    ROLLBACK, COMMIT
    DML
    INSERT
    UPDATE
    DELETE
    1. TCL과 연관지어 출제
    2. INSERT 오류사항
    INSERT (인수 3개) VALUSE (인수 2개) 오류
    MERGE
    제약조건
    PK= UNIQUE+ NOT NULL
    UNIQUE
    NOTNULL
    DCL
    GRANTE
    REVOKE
    1. 정의
    2. ROLE 5가지 특징
    - 롤은 롤에게 부여 가능
    - 사람에게 부여 가능,
    - 사람들은 같은 롤을 가질 수 있음
    - 롤을 부여할려면 권한이 필요함
    - 롤은 권한이 있는 사용자한테 만들어짐
    명령어가 아닌 객체 중 하나
    객체? 데이터베이스를 구성하는 물질들
    EX. 테이블, 인덱스, 뷰, 롤
    3. 문법
    ON TO 구문
    VIEW
    독편보
    *독립성, 기존 테이블의 구조가 변경되면 뷰 구조도 같이 변경, 업데이트 필요 X
    *편리성
    *보안성
    그룹함수
    ROLL UP
    CUBE
    GROUPINGSETS
    (GROUPING)
    시험, 결과값 주고 뭘 썻는지?, 세개 비교표
    EX. ROLLUP(A, B)
    ROLLUP(B, A) = 같은 결과X
    CUBE(A, B) =
    - = 같은 결과
    1. NULL 다 찾기
    2. 총합행 찾기
    있으면 ROLL UP(행의 수가 적으면), CUBE(행의 수가 많으면)
    없으면 GROUPINGSETS
    기출문제 풀면서 연습
    TCL
    COMMIT, ROLLBACK
    SQL SERVER, AUTO COMMIT OFF AND BEGIN TRANSACTION> DDL COMMIT 기능 X

  • @user-lr7cr1ws4t
    @user-lr7cr1ws4t Год назад +5

    sql 왕자 같습니다. 잘봤습니다. 내일 23년 9월 10일 시험보시는 분들 화이팅입니다.

  • @drkelj
    @drkelj Год назад +8

    3일전 이 강의보고 중요한개념 한번더 확인한뒤 최종합격했습니다 정말감사합니다

  • @kyunghokim9889
    @kyunghokim9889 Год назад +6

    머리에 쏙쏙 들어오는 명강이다. 진작 이 강의를 들었으면 덜 고생했을텐데. 깔끔한 최종정리정리 감사합니다!!!!

  • @ks-zz3lw
    @ks-zz3lw 2 года назад +13

    이 강의 덕분에 11/20 SQLD 시험에 잘 응시했습니다. 감사합니다.

    • @gw-yt7js
      @gw-yt7js Год назад

      ㅋㅋㅋㅋㅋㅋㅋㅋㅋ

    • @user-bq7ex9tx9p
      @user-bq7ex9tx9p 8 месяцев назад

      뭘쪼개 븅 시나 ​@@gw-yt7js

  • @user-bm1hg8hy4z
    @user-bm1hg8hy4z Год назад +1

    42:30 ㅊㄱㅍ
    강의 최고에요 감사합니다ㅜㅜ!!

  • @애두리아빠
    @애두리아빠 2 года назад +7

    내용은 참 조은데 칠판이 잘 안보여서ㅠ 인강수강이 망설여지네요,, 인강 화질도 이럴거같아서;

  • @RIZE_B
    @RIZE_B 3 года назад +5

    좋은 강의 감사합니다~!

  • @india0031
    @india0031 3 года назад +6

    좋은 강의 감사합니다.
    오늘 시험에 많은 도움이 되었습니다.

    • @india0031
      @india0031 2 года назад +1

      @@user-fe9vt9el6j 네 합격했습니다

    • @india0031
      @india0031 2 года назад +1

      @@user-fe9vt9el6j 저는 전공수업으로 조금 들었어서..강의보다 기출 돌리시는게 더 좋았던거같습니다

  • @shg4979
    @shg4979 2 года назад +1

    좋은 강의 잘 보고 갑니다. 감사합니다

  • @user-ju9hb4gd9j
    @user-ju9hb4gd9j 2 года назад +3

    28:30 정렬 / 35:27 집계함수와 null / 42:18 서브쿼리

  • @user-ks6ji9eo8f
    @user-ks6ji9eo8f Год назад +1

    선생님 강의가 너무 좋아요 감사합니다 하트

  • @jyk3636
    @jyk3636 2 года назад +6

    집계함수 설명에서
    sum A 는 null 띄우고 3이 나오는데
    sum A+B+C 에서는 왜 null + null + 1 = Null 이 나오나요??

    • @user-jl1ee6lt6o
      @user-jl1ee6lt6o 2 года назад +1

      간단하게 말해서 sum a는 세로를 합치는 건데 null을 제외하고 계산하는거고 sum A+B+C는 가로를 계산하는건데 null을 포함해서 계산하는겁니다

    • @쮜돌
      @쮜돌 2 года назад +1

      섬에이는 하나의 칼럼이라 널제외하고 더해서 3이고
      섬에이비씨는 새로운 임의의 칼럼을 만든거라 서용

  • @lucidpyo1660
    @lucidpyo1660 2 года назад +1

    좋은 영상 감사합니다 . SQL에대해서 배우고 싶었는데 ... 덕분에 이해가 쏙쏙되네요 PG sql에대해서도 강의하시나요?

  • @minnyeongson4317
    @minnyeongson4317 3 года назад +9

    출력되는 컬럼의 수보다 큰값으로 컬럼 번호 정렬이 불허한다는게 무슨 말일까요..? 추가 설명 부탁드려요ㅜㅜ

    • @india0031
      @india0031 3 года назад +13

      출력되는 컬럼이
      select 학과 학번 이름
      이렇게 3개면
      order by 1은 학과 기준 정렬
      order by 2는 학번 기준 정렬
      ….
      여기서 order by 4는 불가합니다

    • @user-uf7ui9xj7d
      @user-uf7ui9xj7d 2 года назад

      오 저도 궁금했는데 감사합니다

  • @fff3265
    @fff3265 20 дней назад

    4년이 지났지만 현역 왕자님

  • @sophiachoi6554
    @sophiachoi6554 2 года назад +1

    시험 전날에 보고있습니다 내일 합격하고 올게요ㅋㅋ

  • @user-ne2rh7zn1f
    @user-ne2rh7zn1f 3 месяца назад

    합격기원!!!!

  • @parkdan5832
    @parkdan5832 3 года назад +2

    43:55 A가 테이블 명이고 col은 속성값아닌가요 ? 그래서 그 칸에 있는 값이랑 B.col이랑 같이 같다는 말씀인 것 같은데 근데 뒤에가면 A.col = A를 말한다는 것도 이해가 잘 안됩니다...

    • @hotfoxy9914
      @hotfoxy9914 2 года назад

      A라는 테이블 안에 한 값의 예시로 'A' 라는 문자가 들어가 있다 하시는거 같네용

  • @user-sd2jz6nu7u
    @user-sd2jz6nu7u 5 месяцев назад

    SQL 기본 // 40:55 - 서브쿼리 까지

  • @Hi-sz8hq
    @Hi-sz8hq Год назад +1

    12:30 escape 부분 백 슬래시 아니고 @사용한 이유가 뭐죠??... 제가 잘못 알고있는지 ㅜㅜ

    • @ethanosm
      @ethanosm Год назад

      저기에 들어갈 문자는 아무거나 상관 없어요

  • @patersons.6034
    @patersons.6034 2 года назад +1

    뚝딱뚝딱

  • @user-tw5fu9bv7b
    @user-tw5fu9bv7b 3 месяца назад +1

    23:29

  • @meme_explorer1
    @meme_explorer1 Год назад +1

    34:25 카운트 뭐라고 하신건가요? 필기하는데 잘 모르겠어서 질문올립니다..

  • @-haaha2181
    @-haaha2181 2 года назад

    41:50 부터 다시 듣기

  • @user-bl2wu4yv6g
    @user-bl2wu4yv6g 2 года назад

    52:00 view 에 대한 설명 뭐가 맞는건가요

  • @user-oi8rf5pl8m
    @user-oi8rf5pl8m Год назад

    19:08~
    30:40~
    36:14~

  • @user-xs9xn5dn1e
    @user-xs9xn5dn1e Год назад

    42:20
    54:13

  • @hyunseokim1253
    @hyunseokim1253 3 года назад +3

    인강도 수강 가능 하나요?

  • @Sdonghoon
    @Sdonghoon 2 года назад +1

    36:08

  • @bboy5870
    @bboy5870 2 года назад

    영상 처음 select 문 순서에 왜 select가 having 뒤에 나오죠??? 가장 앞에 나와야하는거 아닌가요?? ㅜ 시작부터 헷깔려서 영상 뒷부분을 못보게 되네요

    • @user-zj6wt4zy6v
      @user-zj6wt4zy6v 2 года назад

      사용 시 문장에 배치되는 순서가 아니고 연산순서 입니다~

  • @user-yi3se9hi8u
    @user-yi3se9hi8u 2 года назад +1

    34:29 count 에스트 에스크? 이게 무슨 뜻인가요?

    • @taeeunkong1394
      @taeeunkong1394 2 года назад +6

      asterisk 얘기하는거 같은데 * 모양 특수문자를 얘기하는거에요

  • @user-fu2ec1rq8p
    @user-fu2ec1rq8p Год назад

    28:46

  • @wonkid1970
    @wonkid1970 25 дней назад

    10:00

  • @kitikitikat
    @kitikitikat Год назад

    26:00

  • @hyeonsu-hl2ff
    @hyeonsu-hl2ff 3 года назад +5

    왜 from절에 as 사용이 불가함? 나만 이해안됨??
    SELECT A.DNO, A.NUM FROM employee AS A;
    이런식으로 쓰면 되는거 아님? 아니면 내가 잘못 알아들은건가...

    • @김태-n1q
      @김태-n1q 3 года назад

      사용하고싶다면
      AS를 생략해서 넣어야됨 SELECT A.DNO, A.NUM FROM employee A;

    • @giun4727
      @giun4727 2 года назад

      오라클에선 as 안된답니당

    • @hyeonsu-hl2ff
      @hyeonsu-hl2ff 2 года назад +1

      @@giun4727 네 감사함당 ㅎ sqld 붙었네요

    • @giun4727
      @giun4727 2 года назад

      @@hyeonsu-hl2ff 짱짱맨

    • @user-zs3mf7bd7q
      @user-zs3mf7bd7q 2 года назад +2

      sqld가 오라클 위주로 나오나요? 저도 절대 안된다고 해서 뭔소린가 했네요

  • @user-rn7dd8rt5w
    @user-rn7dd8rt5w 10 месяцев назад

    ㅎㅇ

  • @user-tm2zq3mg1c
    @user-tm2zq3mg1c 10 месяцев назад +1

    이것만 보면 되지만 다 실습하라노

    • @user-ub3po6ev2r
      @user-ub3po6ev2r 3 месяца назад

      이것도 못하면 접어야지 뭐..

  • @user-nr8xk4ie1j
    @user-nr8xk4ie1j Год назад

    13:30

  • @django3861
    @django3861 2 года назад +1

    10:00

  • @axelrod-_-
    @axelrod-_- Год назад

    34:00

  • @iswellr8936
    @iswellr8936 Год назад +1

    24:50

  • @iswellr8936
    @iswellr8936 10 месяцев назад

    37:52

  • @ysy3012000
    @ysy3012000 Год назад

    27:51

  • @user-mg5ff4oj9r
    @user-mg5ff4oj9r Год назад

    43:22

  • @jo8020173
    @jo8020173 Год назад

    28:44

  • @user-rn7dd8rt5w
    @user-rn7dd8rt5w 10 месяцев назад

    10:00