gpt4 book ai didi

php - MySQL - 查询临时表以从表中检索 2 行

转载 作者:行者123 更新时间:2023-11-29 02:53:40 24 4
gpt4 key购买 nike

感谢您花时间阅读我的问题。

我正在尝试合并来自 2 个表的数据,以便可以使用 PHP 在网页上显示这些数据——我使用的是 WordPress 网站,因此表结构可能看起来很熟悉。

表格布局:

wp_3bpf9a_posts - 此表中每个“帖子”都有 1 行,我需要此表以便查询特定类型的帖子,并获取日期。

wp_3bpf9a_postmeta - 每个帖子都有很多记录的表格(有一个 ID 将两者链接在一起)。实际上,我需要每个 ID 的 2(许多)行中的数据来完成我正在寻找的显示数据集。

我试图通过创建一个临时表将两个表之间的第一条记录连接在一起来实现这一点,然后我打算返回并将临时表连接到我需要的第二条记录。我实际上使用 Toad 连接到 MySQL DB,当我依次运行下面的每个语句时,下面的代码就可以工作了。当我尝试运行整个程序时,我没有收到错误但也没有结果,当我在我的 PHP 页面上尝试时也是如此。我知道可能有更简单的方法来执行此操作,但这是我从简单的 MySQL 查询中迈出的第一步。如果您能提供任何指导,我们将不胜感激,谢谢!

DROP TABLE IF EXISTS bookingTempTable;

CREATE TEMPORARY TABLE bookingTempTable AS
SELECT ID, post_title, post_name, meta_value
FROM `wp_3bpf9a_posts`
INNER JOIN `wp_3bpf9a_postmeta` ON `wp_3bpf9a_postmeta`.`post_id`=`wp_3bpf9a_posts`.`ID`
WHERE `post_type` LIKE 'booked_appointments' AND `post_title` LIKE '%October 9%' AND `wp_3bpf9a_postmeta`.`meta_key` LIKE 'slot_members';

SELECT *
FROM `wp_3bpf9a_postmeta`
INNER JOIN `bookingTempTable` ON `bookingTempTable`.`ID`=`wp_3bpf9a_postmeta`.`post_id`
WHERE `wp_3bpf9a_postmeta`.`meta_key` LIKE '_appointment_timeslot'
ORDER by `wp_3bpf9a_postmeta`.`meta_value` ASC;

最佳答案

您不需要临时表,只需使用 wp_sbpf9a_postmeta 连接两次即可。

SELECT p.*, m1.meta_value AS slot_member, m2.meta_value AS appointment_timeslot
FROM wp_sbpf9a_posts AS p
JOIN wp_3bpf9a_postmeta AS m1 ON p.id = m1.post_id
JOIN wp_sbpf9a_postmeta AS m2 ON p.id = m2.post_id
WHERE p.post_type = 'booked_appointments'
AND p.post_title LIKE '%October 9%'
AND m1.meta_key = 'slot_members'
AND m2.meta_key = '_appointment_timeslot'
ORDER BY appointment_timeslot

关于php - MySQL - 查询临时表以从表中检索 2 行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32979853/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com