[英]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.