在WORDPRESS中自定义MYSQL选择查询

时间:2013-05-19 12:29:38

标签: mysql wordpress

我正在创建一个Wordpress网站。我有一个SQL表(wp_postmeta),其中包含其他信息:home和away mathes的日期和时间。 (插件ACF)。 表行是这样的:

meta_id   post_id  meta_key        meta_value
1         123      home_0_date     20130512
2         123      home_1_date     20130513
3         123      home_0_time     13h
4         123      home_1_time     16h
5         123      away_0_date     20130514
6         123      away_1_date     20130515
7         123      away _0_time    18h
8         123      away _1_time    19h

home_n_date和home_n_time之间以及away_n_date和away_n_time之间存在相关性。 事实上,在这种情况下,我正在添加两场主场比赛:12月05日2013年13h和2013年10月13日16h 和两场客场比赛14/05 / 2013 18h和15/05 / 2013 19h。

对于自定义日历,我有这个自定义MYSQL查询:

SELECT * 
FROM wp_postmeta as pmd 
JOIN wp_posts as ps ON ps.ID = pmd.post_id 
WHERE (pmd.meta_key LIKE 'away_%_date' || pmd.meta_key LIKE 'home_%_date') 
&& ps.post_status = 'publish';

这种方法很好,但在这种情况下,我只选择没有时间的日期,不区分主场和客场比赛。 现在我想添加时间和方法来区分主场和客场比赛(添加一些变量?)

"SELECT * 
FROM wp_postmeta as pmd 
JOIN wp_posts as ps ON ps.ID = pmd.post_id
LEFT JOIN wp_postmeta as pmt  ON ps.ID = pmt.post_id 
WHERE (pmd.meta_key LIKE 'away_%_date' || pmd.meta_key LIKE 'home_%_date') 
&& (pmt.meta_key LIKE 'away_%_time' || pmt.meta_key LIKE 'home_%_time') 
&&  (% = % /*???*/) 
&& ps.post_status = 'publish';

有什么想法吗?

0 个答案:

没有答案