从另一个表插入到表中

insert into tables from another tables

好吧,我尝试将表插入到另一个表中,但出现此错误;

WordPress 数据库错误:[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 ''lcl_user_agent' (user_agent, hitcount, click_timestap) SELECT visite_useragent,' at line 1]

这是我的代码;

$addagent = "INSERT INTO $wpdb->prefix.'lcl_user_agent' (user_agent, hitcount, click_timestap) SELECT visite_useragent, visite_hitcount, click_timestap FROM $wpdb->prefix.'lcl_visite_agent' .agent_id IN (' . $agent_id . ')";

$wpdb->query($addagent);

我想将来自 visite_useragent 的访问对象插入 lcl_user_agent,然后我从表单

中获取带有 $agent_id 块的访问对象

看来你最后搞砸了。 应该是这样的形式:

INSERT INTO table2 (column1, column2, column3, ...)
SELECT column1, column2, column3, ...
FROM table1
WHERE condition;

也许这就是您想要的?

$addagent = '
 INSERT INTO 
        '.$wpdb->prefix.'lcl_user_agent
        (user_agent, hitcount, click_timestap) 
    SELECT 
        visite_useragent, visite_hitcount, click_timestap 
    FROM 
        '.$wpdb->prefix.'lcl_visite_agent
    WHERE
        agent_id IN (' . $agent_id . ')
 ';

试一试:

$addagent = "INSERT INTO " . $wpdb->prefix . 'lcl_user_agent' . " (user_agent, hitcount, click_timestap) SELECT visite_useragent, visite_hitcount, click_timestap FROM " . $wpdb->prefix.'lcl_visite_agent' . " where agent_id IN (' . $agent_id . ')";

$wpdb->query($addagent);

我从来没有在双引号字符串中嵌入 -> 的运气。只是更清楚地将字符串连接在一起。此外,在这种情况下,除非您有多个 $agent_id 值,否则您可能会考虑 where agent_id = $agent_id 而不是使用 IN.