繁体   English   中英

不满足特定条件时如何插入表格

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

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM