2017-03-21 20 views
-1

私はこのMySQL Statementを持っています。このSQLを繰り返し実行して、結果を3番目のテーブルに挿入し、3番目のテーブルのレコードを複製したいとします。レコードを複製せずにテーブルにレコードを挿入する

SELECT `Client_ID`, `Client_RFID_Number` 
FROM ciom_master AS a 
WHERE (`Client_Active` ='Y' OR `Client_Active` ='y') 
    AND NOT EXISTS (
        SELECT (`Client_Check_Out`) 
        FROM `cio_master` AS b 
        WHERE a.Client_ID = b.Client_ID 
         and Client_Check_Out = CURDATE()) 
AND NOT EXISTS (
       SELECT (`Client_Check_In`) 
       FROM `cio_master` AS c 
       WHERE a.Client_ID = c.Client_ID 
        and Client_Check_In = CURDATE()) 

私は次のステートメントを試みていますが、それはエラーを投げている

INSERT IGNORE INTO cio_alert (`Client_ID`, `Client_RFID_Number`, `Client_Check_Out`, `Client_Check_In`) 

SELECT `ciom_master`.`Client_ID`, `ciom_master`.`Client_RFID_Number`,`cio_master`.`Client_Check_Out`, `cio_master`.`Client_Check_In` FROM ciom_master 
INNER JOIN `cio_master` ON `ciom_master`.`Client_ID` = `ciom_master`.`Client_ID` 
WHERE EXISTS 
(SELECT `Client_ID`, `Client_RFID_Number` 
    FROM ciom_master AS a 
    WHERE (`Client_Active` ='Y' OR `Client_Active` ='y') 
     AND NOT EXISTS (
        SELECT (`Client_Check_Out`) 
        FROM `cio_master` AS b 
        WHERE a.Client_ID = b.Client_ID 
         and Client_Check_Out = CURDATE()) 
     AND NOT EXISTS (
       SELECT (`Client_Check_In`) 
       FROM `cio_master` AS c 
       WHERE a.Client_ID = c.Client_ID 
        and Client_Check_In = CURDATE()) 
     AND (
       SELECT `Client_Check_Out` FROM cio_master 
       WHERE ((`Client_Check_Out` IS NOT NULL AND `Client_Check_In` IS NULL) 
       OR (`Client_Check_Out` IS NULL AND `Client_Check_In` IS NULL))) 
     AND (
       SELECT `Client_Check_In` FROM cio_master 
       WHERE ((`Client_Check_Out` IS NOT NULL AND `Client_Check_In` IS NULL) 
       OR (`Client_Check_Out` IS NULL AND `Client_Check_In` IS NULL)))   
) 

答えて

0

あなたdidntの言及が存在するか、最後のselect文での条件は存在しない... uが単に存在するすべてずに、条件をつけたり存在しない、または存在しない。有効な条件のいずれかをそこに置こうとする。また、最初のselectステートメントでは、同じテーブルを2回使用し、エイリアスなしで結合すると、そのテーブルを1回もチェックしてみてください。

+0

ありがとうございました。それは本当に本当に私の愚かだった。あなたのアドバイスは私を助けてくれました。今働いている。 – Raky

関連する問題