2017-08-01 42 views
0

我想插入REG_ID成表,它存在於另一個表,其中狀態= 1上每分鐘如何從另一個表通過動態值在MySQL事件

DELIMITER | 
CREATE EVENT myevent 
    ON SCHEDULE EVERY 1 MINUTE 
    D0 
     BEGIN 

     INSERT INTO article(title,description,useri_id) 
     VALUES('a1ert', 'check check check', 
     SELECT regid from users where uname ='admin'); 

    END | 
DELIMITER ; 

它說錯誤:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'SELECT reg_id from users where uname ='admin'); END' at line 6

+0

請添加你嘗試過的,你得到什麼錯誤和你期望做什麼。 – Efren

+0

這看起來像'phpmyadmin',不是PHP,也不是codeigniter。 – chris85

+0

問題是子查詢,這應該是一個'insert into ... select'。雖然我不打算轉錄一張圖片。請將您的查詢添加到問題中。 (我在你的查詢中也沒有看到有關'status = 1'的信息) – chris85

回答

0

請在下面找到解決方案。

DELIMITER $$ 

CREATE EVENT myevent 
    ON SCHEDULE EVERY 1 MINUTE STARTS '2017-08-01 09:37:14' ON COMPLETION NOT PRESERVE ENABLE DO 
     BEGIN 
     INSERT INTO article (title,description,user_id) SELECT 'alert','check check check',regid FROM user WHERE uname ='admin'; 

    END$$ 

DELIMITER ; 

讓我知道,如果它不起作用。

+0

只有當用戶表中有一行時,纔有用bt我必須提取並插入所有的reg_id – resham

+0

請檢查我的更新回答,有問題但你沒有提到您需要插入所有記錄。 –

+0

非常感謝你和遺憾的不完整的問題 – resham

相關問題