INSERT INTO
product_search_table (id, score)
VALUES (
SELECT product_id, 50 FROM cart_product WHERE product_id = 555
)
제게 오류가 있습니다. 내가 도대체 뭘 잘못하고있는 겁니까?이 쿼리에 잘못된 점이 있습니까?
555는 변수로 대체 될 것입니다.
INSERT INTO
product_search_table (id, score)
VALUES (
SELECT product_id, 50 FROM cart_product WHERE product_id = 555
)
제게 오류가 있습니다. 내가 도대체 뭘 잘못하고있는 겁니까?이 쿼리에 잘못된 점이 있습니까?
555는 변수로 대체 될 것입니다.
INSERT ... SELECT 쿼리에 대해 잘못된 구문을 사용하고 있습니다. 여기
은 제대로 할 줄 방법은 다음과 같습니다
INSERT INTO product_search_table (id, score)
SELECT product_id, 50 FROM cart_product WHERE product_id = 555
우리 모두가 같은 페이지에 있다는 것을 알았습니다. :) – Faisal
은 선택보기 용의자 주위
INSERT INTO
product_search_table (id, score)
SELECT product_id, 50 FROM cart_product WHERE product_id = 555
브래킷 시도 - 값을 수행한다. 시도 :
INSERT INTO product_search_table (id, score)
SELECT product_id, 50 FROM cart_product WHERE product_id = 555
사용 :
INSERT INTO product_search_table
(id, score)
SELECT product_id, 50
FROM cart_product
WHERE product_id = 555
INSERT 문에 SELECT 문을 사용하여, 당신은 VALUES 키워드를 사용하거나 괄호에 SELECT를 동봉하지 않습니다.
에 구문 문제가 될 것으로 보인다. VALUES는이 유형의 쿼리에 속하지 않습니다.
그리고, 아직이 질문에 아무도 대답하지 않은 것에 놀랐습니다 ... –
내 생각 엔 서브 쿼리가 (이론적으로) 여러 행을 반환 할 수 있다는 것입니다. 그렇다면 여러 행이 단일 필드에 어떻게 맞을 수 있습니까? 쿼리 된 데이터가 스칼라 값인지 확인하려고 할 수 있습니다.
(두 번째 필드/50 값에 대해서는 너무 확신하지 못합니다.)
편집 : VALUES는 insert statements people에 사용됩니다. this page
edit2 : 첫 번째 열에 대한 데이터 만 선택하고 두 번째 열에 대한 데이터는 어디에 있습니까?
VALUES는 때때로 INSERT에 사용되지만,이 경우에는 사용되지 않습니다. –
VALUES로는이를 수행 할 수 없습니다.
INSERT INTO
product_search_table (id, score)
SELECT product_id,50 FROM cart_product WHERE product_id = 555
오류가 무엇입니까 : 예를 들어
? –
내 영혼의 평화를 위해서 : 이것은 단지 최소화 된 예였습니까? 이 경우 하위 쿼리는 전혀 필요하지 않기 때문입니다. – Bobby
@Bobby 알고리즘의 검색 결과가 포함 된 임시 테이블이 있습니다. 알고리즘은 제품 ID가 검색어와 일치하는지 확인하지 않습니다. 위의 코드에서 검색어가 제품의 제품 ID 인 경우 원래 테이블의 제품과 함께 임시 테이블을 삽입합니다. 관련성이 높은 점수 그 말이 맞는다면. –