본문 바로가기

코딩 학원(국비지원)

38일차 코딩학원

반응형

1. DML_중급 

- UPDATE JOIN 문 : 다른 테이블 내용 참고하고 싶을 때 사용함. 복잡한 업무 처리에 유용함. 

 

지금하는 SQL문은 표에다 표를 끼워넣는 것 같다. 업데이트가 그거지 뭐. 

 

3. DELETE 문

컴퓨터는 좋겠다. DELETE하면 모든 기억을 다 지워버릴 수 있다. COMMIT 하기 전에는 ROLLBACK이 가능하다. 

 

4.UPSERT 문 
    1) INSERT를 시도할 때 조건(상황)에 따라 UPDATE를 할 수 있는 구문.
    2) 테이블에 특정 행을 입력할 때 이미 존재하는 행이라면 
       컬럼들을 UPDATE하고, 존재하지 않는 행이라면 새로 INSERT하는 기능. 

    3) 문법
        INSERT INTO TABLE_NAME(COLUMN1) VALUES(VALUE1)
        ON CONFLICT TARGET ACTION;  -- 충돌시 다른 액션

        - ON CONFLICT ~ DO NOTHING
            - 에러는 발생하지 않으면서 아무것도 하지 않은 것
        
        - ON CONFLICT ~ DO UPDATE SET

 

5. GROUP BY 문 

 

-- GROUP BY

/*

* CUSTOMER_ID 컬럼의 값 기준으로 GROUP BY 함

* 해당 컬럼값 기준으로 중복이 제거된 행이 출력됨

*/

select A.CUSTOMER_ID

from payment A

group by A.customer_id

order by A.customer_id

;

-- customer_id 컬럼별 amount의 합계가 큰순서로 10건을 출력해주세요.

select A.customer_id

,sum(A.amount) as AMOUNT_SUM

from PAYMENT A

group by A.customer_id

order by AMOUNT_SUM desc

limit 10

;

-- FIRST_NAME 및 LAST_NAME도 같이 출력해주세요.

select A.customer_id

,B.first_name

,B.last_name

,SUM(A.amount) as AMOUNT_SUM

from CUSTOMER B, PAYMENT A

where A.customer_id = B.customer_id

group by A.CUSTOMER_ID, B.first_name , B.last_name

order by AMOUNT_SUM desc

limit 10

;

-- customer_id가 first_name 및 last_name을 결정지을 수 있음

-- MAX() 사용가능함.

select A.customer_id

,MAX(B.first_name) as first_name -- 집계함수로 구하기

,MAX(B.last_name) as first_name

,SUM(A.amount) as AMOUNT_SUM

from CUSTOMER B, PAYMENT A

where A.customer_id = B.customer_id

group by A.CUSTOMER_ID, B.first_name , B.last_name

order by AMOUNT_SUM desc

limit 10

;

 

6. chatGPT 완전히 믿지마라. 

 

https://www.w3schools.com/sql/sql_groupby.asp

 

 

SQL GROUP BY Statement

W3Schools offers free online tutorials, references and exercises in all the major languages of the web. Covering popular subjects like HTML, CSS, JavaScript, Python, SQL, Java, and many, many more.

www.w3schools.com

 

https://stackoverflow.com/

 

Stack Overflow - Where Developers Learn, Share, & Build Careers

Stack Overflow | The World’s Largest Online Community for Developers

stackoverflow.com

 

 

chatGPT를 맹신하면 안 된다. 위 사이트에서 source를 찾아보자. 

 

 

7. having 절 

 

8. INTERCET 

반응형

'코딩 학원(국비지원)' 카테고리의 다른 글

40일차 코딩학원  (1) 2023.03.16
39일차 코딩학원  (0) 2023.03.15
37일차 코딩학원  (0) 2023.03.13
36일차 코딩학원  (0) 2023.03.10
35일차 코딩학원  (0) 2023.03.09