복붙노트

[SQL] MySQL은 OUTPUT 절

SQL

MySQL은 OUTPUT 절

우리는 SQL Server에서 OUTPUT 절을 가지고, MySQL의에서 OUTPUT 절을 시뮬레이션 할 수있는 방법이 있나요.

여기에 내가 가진 쿼리의 종류입니다

UPDATE       employee
SET          empage = 10
OUTPUT       INSERTED.empid
WHERE        (empage < 10)

나도 MySQL 서버의 데이터베이스에 대해이 기능을 가질 필요가있다.

좋은 말 할 때이 기능을 달성하기 위해 최선의 방법을 제안한다.

해결법

  1. ==============================

    1.편집하다:

    편집하다:

    나는 이노 디비 테이블 하나 개의 시나리오를 시도 그것이 작동하는 것 같습니다있다 -

    START TRANSACTION;
    
    SELECT * FROM table WHERE id = 1 FOR UPDATE; -- lock rows
    -- Or call this select to insert and lock rows
    -- INSERT INTO table_output SELECT * FROM table WHERE id = 1 FOR UPDATE;
    
    -- Make modifications
    UPDATE table SET column1 = '111' WHERE id = 1;
    
    COMMIT;
    

    SELECT 문 (FOR UPDATE 절)

  2. from https://stackoverflow.com/questions/5817414/output-clause-in-mysql by cc-by-sa and MIT license