0

私は古いヘルプデスクチケットシステムを持っており、新しいチケットシステムとの間でデータを移植する任務を負っています。これが私が実行しているクエリです:

DROP TABLE IF EXISTS final_table;

CREATE TABLE final_table (
    name varchar(40), 
    ticketID BIGINT, 
    ticket_id BIGINT,
    subject varchar(255), 
    priority_id varchar(10), 
    status varchar(10), 
    updated DATE, 
    created DATE,
    closed DATE,
    response LONGTEXT
);

ALTER TABLE final_table ADD PRIMARY KEY(ticket_id);

INSERT INTO final_table
SELECT      name, ticketID, ticket_id, subject, priority_id, status, updated, created, closed, response
FROM        ost_ticket;

ALTER TABLE final_table ADD response LONGTEXT;
ALTER TABLE final_table ADD impact varchar(40);
ALTER TABLE final_table ADD category varchar(20);
ALTER TABLE final_table ADD queue varchar (20);

UPDATE final_table SET impact = "1 person can't work";
UPDATE final_table SET category = "Other";
UPDATE final_table SET queue = "Help Desk";

INSERT INTO final_table( response )
SELECT      GROUP_CONCAT(ost_ticket_response.response SEPARATOR "\n\n") AS response
FROM        ost_ticket_response
GROUP BY    ost_ticket_response.ticket_id;

古い発券ソフトウェアでは、PKがost_ticket_responseテーブルに複数回リストされているため、最後の4行でGROUP_CONCAT呼び出しを行う必要があります。基本的に、同じticket_idを持つエントリを組み合わせて、作成している一時テーブルにプルしようとしています。現在のクエリを実行すると、応答列にnullの結果が入力されるだけです。何か案は?

4

0 に答える 0