2017-02-27 13 views
0

생성 한 deal_classification_DM 테이블의 CATO_NAME 열에 오른쪽 조인 결과를 삽입하려고합니다. select의 결과는 예상대로이며 프로그램은 정상적으로 실행되지만 데이터는 테이블로 업데이트되지 않습니다. 무엇이 잘못 되었나요?삽입 및 오른쪽 조인을 사용하여 테이블에 데이터 삽입 안 함

`INSERT INTO deal_classification_DM 
(CATO_NAME) 
SELECT 
    taxonomies.NAME 
FROM 
    taxonomies 
RIGHT JOIN 
    deal_classification_DM ON taxonomies.ID = deal_classification_DM.CATO_ID; 

삽입은이 같은 만든 테이블 deal_classification_DM로 수행됩니다

UPDATE deal_classification_DM d 
SET d.CATO_NAME = (
    SELECT name FROM taxonomies WHERE ID = d.CATO_ID 
); 

INSERT 문 : 당신이 정말로해야 할 일은

CREATE TABLE deal_classification_DM 
AS SELECT 
    deal_taxonomy.DEAL_ID 
    ,deal_taxonomy.TAXONOMY_ID AS TAXO_ID 
    ,taxonomies.NAME AS TAXO_NAME 
    ,taxonomies.PARENT_ID AS CATO_ID 
FROM 
    deal_taxonomy 
LEFT JOIN 
    taxonomies ON deal_taxonomy.TAXONOMY_ID = taxonomies.ID; 

ALTER TABLE deal_classification_DM 
ADD COLUMN 
    CATO_NAME TEXT; 

답변

0

update하지 insert 예입니다 null 값이있는 새 행을 DEAL_ID, TAXO_ID 및 01에 삽입합니다.개의 열이 있지만 새로운 열이므로 CATO_NAME 열의 값만 업데이트하면됩니다.

+0

답장을 보내 주셔서 감사합니다. –