[英]How to insert into table when particular condition not satisfied
當它沒有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產品沒有特色圖片,但有產品圖片庫。 圖片已上傳到媒體。因此,我想將圖庫圖片制作為特色圖片,而那些沒有特色圖片的產品則會使用該圖片。 產品數量很多。 所以我想通過腳本自動化它。
由於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' ;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.