> 데이터 베이스 > MySQL 튜토리얼 > SELECT를 사용하여 테이블에 INSERT를 수행하여 한 열에 다른 값을 할당할 수 있습니까?

SELECT를 사용하여 테이블에 INSERT를 수행하여 한 열에 다른 값을 할당할 수 있습니까?

Linda Hamilton
풀어 주다: 2025-01-18 19:46:11
원래의
114명이 탐색했습니다.

Can I INSERT into a table with SELECT, assigning a different value to one column?

수정된 열 값과 INSERT 및 SELECT 결합

이 예에서는 courses 문을 사용하여 SELECT 테이블에 데이터를 삽입하는 동시에 소스 테이블에서 검색된 값에 관계없이 gid 열에 특정 값을 할당하는 방법을 보여줍니다.

원래 쿼리는 courses 테이블에서 데이터를 복사하려고 시도합니다.

<code class="language-sql">INSERT INTO courses (name, location, gid) 
SELECT name, location, gid 
FROM courses 
WHERE cid = $cid</code>
로그인 후 복사

문제는 삽입 과정에서 gid 값을 수정할 수 있는지 여부입니다.

솔루션

예, 가능합니다. 핵심은 gid 문의 SELECT 열을 상수 값이나 다른 표현식으로 바꾸는 것입니다. 다음 쿼리는 이를 보여줍니다.

<code class="language-sql">INSERT INTO courses (name, location, gid)
SELECT name, location, 1  -- '1' is the new gid value
FROM   courses
WHERE  cid = 2  -- Example condition; replace '2' with your desired cid</code>
로그인 후 복사

이 수정된 쿼리에서 gid 문의 INSERT 열은 1 테이블에서 선택한 행의 gid 값에 관계없이 항상 courses 값을 받습니다. 1gid 열의 데이터 유형과 호환되는 값을 생성하는 적절한 상수 또는 표현식으로 대체할 수 있습니다. WHERE 절은 소스 데이터를 필터링하여 관련 행만 삽입에 사용되도록 합니다.

위 내용은 SELECT를 사용하여 테이블에 INSERT를 수행하여 한 열에 다른 값을 할당할 수 있습니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
저자별 최신 기사
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿