簡體   English   中英

在WordPress數據庫中的INSERT查詢中獲取SQL語法錯誤

[英]Getting SQL syntax error in INSERT query in wordpress database

我正在使用下面的插入查詢添加所有wordpress帖子的自定義字段,但是卻收到Sql語法錯誤,我不知道我在哪里做錯了

INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID AS post_id, 'CustomField'
AS meta_key 'MyValue AS meta_value
FROM wp_posts WHERE ID NOT IN
(SELECT post_id FROM wp_postmeta WHERE meta_key = 'CustomField')
'' AND post_type = 'post'; 

您錯過了用逗號分隔列和用單引號引起來的字符串。

INSERT INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT ID AS post_id, 
       'CustomField' AS meta_key, 
       'MyValue' AS meta_value
FROM   wp_posts 
WHERE  ID NOT IN
       (SELECT post_id 
        FROM wp_postmeta 
        WHERE meta_key = 'CustomField')
       AND post_type = 'post'; 

使用NOT IN的另一種方法是通過聯接兩個表,

INSERT  INTO wp_postmeta (post_id, meta_key, meta_value)
SELECT  a.ID AS post_id, 
        'CustomField' AS meta_key, 
        'MyValue' AS meta_value
FROM    wp_posts a
        LEFT JOIN wp_postmeta b
            ON  a.ID = b.post_id AND 
                b.meta_key = 'CustomField'
WHERE   a.post_type = 'post' AND
        b.post_id IS NULL

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM