You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用JOIN关联wp_posts与wp_postmeta按_booking_start升序查询?

WooCommerce预订数据关联查询实现

关联逻辑说明

两个WordPress核心表的关联规则:

  • 主表wp_posts存储所有类型的内容条目,本次筛选post_type为wc_booking的预订记录,需要返回的核心字段为ID、post_parent
  • 关联表wp_postmeta存储内容的扩展属性,本次需要匹配meta_key为_booking_start的预订开始时间属性,关联键为wp_posts.ID = wp_postmeta.post_id
  • 最终结果按预订开始时间升序排列

可直接运行的SQL语句

SELECT
  p.ID,
  p.post_parent,
  pm.meta_value AS booking_start
FROM wp_posts p
INNER JOIN wp_postmeta pm
  ON p.ID = pm.post_id
  AND pm.meta_key = '_booking_start'
WHERE p.post_type = 'wc_booking'
ORDER BY pm.meta_value ASC;

补充说明

  • 语句中给表设置了短别名p、pm简化书写,不影响查询逻辑
  • 将meta_key的过滤条件写在JOIN ... ON子句中,比全量关联后再在WHERE中过滤执行效率更高
  • 如果需要保留没有配置开始时间的预订记录,将INNER JOIN替换为LEFT JOIN即可,无对应开始时间的记录booking_start字段会返回NULL,默认排序时会排在结果最前端

内容的提问来源于stack exchange,提问作者Ville

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.28 13:01:00