我有一个如下所示的选择,可以返回每个“sender_userid”的正确计数。
我想将其插入到另一个数据库的表中,其中有一个匹配的列“userid”。
我不确定如何让 WHERE 子句在跨数据库使用时发挥作用。
我尝试过database.table.column,但这似乎是错误的。
这可能吗?谢谢
最佳答案
WHERE
语句必须位于 ORDER BY
和 GROUP BY
语句之前。您还应该使用 ON
运算符。试试这个:
INSERT INTO dating_users.statistics (messages_sent)
SELECT COUNT(pid) FROM dating_messages.messages M
JOIN dating_users.statistics S
ON (S.userid = M.sender_userid)
GROUP BY sender_userid ORDER BY sender_userid ASC;
编辑:抱歉,我没有意识到您错过了实际的 JOIN 语句。仅仅因为您插入到表中并不能从该表访问任何数据。您仍然需要加入它。
关于MySQL 从 1 个表中选择,使用Where 跨不同数据库插入到另一个表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25346374/