我有3个表,“用户”,“消息”,“队列”。
用户表由用户ID(“ ID”)和状态(“状态”)组成。
消息表由用户ID(“ id”)和消息(“ msg”)组成。
队列表是消息表的副本。
我的代码只需要复制 message 表并将其粘贴到 queue 表中即可。
$query = "INSERT IGNORE INTO queue(id,msg) SELECT id,msg FROM message";
if ($DBcon->query($query)) {
echo "Done";
} else {
echo "Failed";
}
但是,仅当用户的状态设置为“ y” 时,我才想将行从消息表复制到队列表。
请帮助我。谢谢!
答案 0 :(得分:2)
使用联接以及
INSERT IGNORE INTO queue(id,msg)
SELECT id,msg
FROM message
INNER JOIN user on user.id = message.id
WHERE user.status = 'Y';
答案 1 :(得分:0)
尝试此查询
INSERT INTO queue (id, msg)
SELECT A.id, A.msg
FROM message A
JOIN users B
ON A.id=B.id
WHERE B.status= 'y';