2016-09-17 49 views
0

當我沒有meta_key = '_thumbnail_id'時,我想插入表格shp_postmeta如何在特定條件不滿意時插入表格

插入的值是從同一個表shp_postmeta其中meta_key = '_product_image_gallery'即在SQL語句

SELECT meta_key, meta_value FROM shp_postmeta WHERE meta_key = '_product_image_gallery' 

該表涉及到不同的表shp_post其中shp_posts.ID = shp_postmeta.post_id

shp_postmeta的表結構的形式:

meta_id | post_id | meta_key | meta_value 

表結構shp_posts表爲:

ID | post_author | .... 

這些是WordPress表結構。

編輯1

在WP也有一些woocommerce產品不具有特色的形象,但他們的產品畫廊圖像。圖像被上傳到媒體中。所以我想讓圖庫圖像成爲特色圖像,哪些產品沒有特色圖像。產品量很大。所以我想通過腳本自動化它。

+0

你能分享一些樣本數據,結果你想要得到它?這會使問題更加清楚。 – Mureinik

+1

請參閱編輯它可能有助於澄清問題。 – PlanetHackers

回答

1

因爲shp_postmeta有一個auto_increment的PK,你可以執行:

INSERT INTO shp_postmeta 
    SELECT null, p1.post_id, '_thumbnail_id', p1.meta_value 
    FROM shp_postmeta p1 
    WHERE p1.post_id NOT IN(
      SELECT p2.post_id 
      FROM shp_postmeta p2 
      WHERE p2.meta_key = '_thumbnail_id') 
    AND p1.meta_key = '_product_image_gallery' ; 
+0

它有語法錯誤。第二行可能不需要null。 – PlanetHackers

+0

語法錯誤?哪裏? – corretge

+0

必須將第一個字段設置爲null,即auto_increment PK。 – corretge

相關問題