SELECT 포함 삽입
를 사용하여 삽입하는 쿼리가 있습니다.SELECT
스테이트먼트:
INSERT INTO courses (name, location, gid)
SELECT name, location, gid
FROM courses
WHERE cid = $cid
삽입물에 대해 "이름, 위치"만 선택하고 설정할 수 있습니까?gid
더 많은 정보를 얻을 수 있을까요?
네, 물론이죠. 하지만 구문을 확인해 보세요.
INSERT INTO courses (name, location, gid)
SELECT name, location, 1
FROM courses
WHERE cid = 2
다음과 같은 유형의 상수를 넣을 수 있습니다.gid
물론 1명뿐만이 아니라 그 자리에 있습니다.그리고 제가 방금 만든 게cid
가치.
네, 그렇습니다.다음과 같이 쓸 수 있습니다.
INSERT INTO courses (name, location, gid)
SELECT name, location, 'whatever you want'
FROM courses
WHERE cid = $ci
또는 선택...의 다른 결합에서 값을 얻을 수 있습니다.
올바른 구문: 선택한 철자가 잘못되었습니다.
INSERT INTO courses (name, location, gid)
SELECT name, location, 'whatever you want'
FROM courses
WHERE cid = $ci
네, gid에 무엇을 사용하시겠습니까? 정적 값, PHP var, ...
스태틱 값 1234는 다음과 같습니다.
INSERT INTO courses (name, location, gid)
SELECT name, location, 1234
FROM courses
WHERE cid = $cid
물론 할 수 있죠.
단, 한 가지 주의할 점이 있습니다.그INSERT INTO SELECT
스테이트먼트에서는, 1개의 테이블로부터 데이터를 카피해 다른 테이블에 삽입합니다.이 경우 소스 테이블과 타깃 테이블의 데이터 타입이 일치해야 합니다.지정된 테이블 열의 데이터 유형이 일치하지 않는 경우(즉, 삽입 시도)VARCHAR
안으로INT
, 또는TINYINT
안으로INT
) MySQL 서버가 다음 명령을 실행합니다.SQL Error (1366)
.
그러니 조심하세요.
명령어 구문은 다음과 같습니다.
INSERT INTO table2 (column1, column2, column3)
SELECT column1, column2, column3 FROM table1
WHERE condition;
사이드 노트:다른 기둥 유형 삽입 문제를 회피하는 방법은 주조물을 사용하는 것입니다.SELECT
예를 들어 다음과 같습니다.
SELECT CAST('qwerty' AS CHAR CHARACTER SET utf8) COLLATE utf8_bin;
이 변환(CAST()
와 동의어이다CONVERT()
)는 테이블이 같은 테이블컬럼에 다른 문자셋이 있는 경우 매우 편리합니다(적절하게 처리하지 않으면 데이터가 손실될 수 있습니다).
INSERT 문장이 잘못된 것 같습니다.올바른 구문을 참조해 주세요.http://dev.mysql.com/doc/refman/5.1/en/insert.html
편집: 앤드류가 이미 지적했듯이...
우리 모두 이게 효과가 있다는 걸 알고 있어
INSERT INTO `TableName`(`col-1`,`col-2`)
SELECT `col-1`,`col-2`
===========================
아래 방법은 "select" 문이 여러 개 있는 경우 사용할 수 있습니다.그냥 참고용이에요.
INSERT INTO `TableName`(`col-1`,`col-2`)
select 1,2 union all
select 1,2 union all
select 1,2 ;
쿼리에 적합한 구문은 다음과 같습니다.
INSERT INTO courses (name, location, gid)
SELECT (name, location, gid)
FROM courses
WHERE cid = $cid
언급URL : https://stackoverflow.com/questions/5391344/insert-with-select
'programing' 카테고리의 다른 글
마리아에 대한 속편 오류DB (0) | 2022.09.06 |
---|---|
"java.net"을 해결 방법Bind Exception:이미 사용 중인 주소: JVM_Bind" 오류입니까? (0) | 2022.09.06 |
ByteBuffer의 플립 방식의 목적은 무엇입니까? (그리고 왜 "플립"이라고 부릅니까?) (0) | 2022.09.06 |
Java에는 경로 결합 방식이 있습니까? (0) | 2022.09.06 |
Intelij IDEA, 프로젝트의 모든 코드 포맷 (0) | 2022.09.06 |