2013-10-27 7 views
1

SQL 삽입에 대해 배우고 있으며 다음과 같은 SQL 쿼리를 발견했습니다. 내가 실행할 때 내가 을 받기를 실행하면SubQuery를 사용한 SQL 삽입 Insert 문에서 선택

INSERT INTO documents (name, filename, mimetype, sessid) VALUES ((SELECT * FROM level8.documents), "filename", "mimetype", "sessid"); 

또는

INSERT INTO documents (name, filename, mimetype, sessid) VALUES ((SELECT * FROM level8.documents), "filename", "mimetype", "sessid"); 

: 나는 그런 짓을 할

INSERT INTO documents (name, filename, mimetype, sessid) VALUES ("name", "filename", "mimetype", "sessid"); 

: 같은

SQL 쿼리 보인다 이. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

+0

물론 메시지가 있습니다. – usr

+0

@usr 무엇? 나는 이해하지 못한다. –

+0

모든 오류 메시지와 함께해야합니다 –

답변

0

select 문은 두 개 이상의 열을 반환합니다.

INSERT INTO documents (name, filename, mimetype, sessid) 
VALUES ((SELECT GROUP_CONCAT(names of all your columns) FROM 
level8.documents), "filename", "mimetype", "sessid"); 

여기에 하위 쿼리 오류에 대한 자세한 내용을 읽어보십시오.

http://dev.mysql.com/doc/refman/5.6/en/subquery-errors.html

+0

을해야합니다 같은데요 그냥 같이 작동하지 않을 것이다 table 나는 또한 모든 것을 고르고있다. 문서에서 모든 삽입 - - 쿼리를 실행 - –

+1

은 어쩌면 임시 테이블은 만들 것을 사용할 수있는 임시 테이블 –

+0

을 삭제하는 방법은'@@ "이름"의 VERSION'의 올바른 위치를 선택 드롭 원하는 경우는 어떻습니까? –