특정 조건이 충족되는 경우에만 테이블에 데이터를 삽입해야 하는 경우가 종종 있습니다. 저장 프로시저는 이를 달성하기 위한 한 가지 방법을 제공하지만 SQL 쿼리에서 직접 조건부 삽입을 수행할 수 있는 방법을 살펴보겠습니다.
조건부로 데이터를 삽입하려면 다음 구문을 활용할 수 있습니다.
INSERT INTO TABLE SELECT value_for_column1, value_for_column2, ... FROM wherever WHERE your_special_condition
WHERE 절의 하위 쿼리가 조건이 충족되지 않아 행을 반환하지 않으면 삽입이 발생하지 않습니다.
예:
다음 테이블을 고려하세요.
CREATE TABLE products (id INT PRIMARY KEY AUTO_INCREMENT, qty_on_hand INT); CREATE TABLE orders (id INT PRIMARY KEY AUTO_INCREMENT, product_id INT, qty INT);
부두인형(제품 ID 2) 20개를 주문하려면 재고가 충분한지 확인하고 다음과 같이 조건부로 주문을 입력할 수 있습니다.
INSERT INTO orders (product_id, qty) SELECT 2, 20 WHERE (SELECT qty_on_hand FROM products WHERE id = 2) > 20;
수량이 손이 충분하면 주문 행이 생성됩니다. 그렇지 않으면 삽입이 발생하지 않습니다. 이 방법은 재고 가용성을 확인하고 단일 트랜잭션에서 삽입을 실행하여 동시성 문제를 완화하는 데 도움이 됩니다.
위 내용은 특정 조건에 따라 조건부로 MySQL 테이블에 데이터를 삽입하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!