按相同列中的唯一值对值进行分组

时间:2017-10-05 22:16:06

标签: php mysql wordpress

我有一个wordpress的meta_data表,看起来像这样:

meta_key                meta_value       post_id
addressSuburb           South Bank       12
addressSuburb           West End         13
addressState            QLD              12
addressState            VIC              13

我用来获取数据的查询是:

SELECT pm.meta_value FROM {$wpdb->postmeta} pm
LEFT JOIN {$wpdb->posts} p on p.ID = pm.post_id
WHERE pm.meta_key = 'addressSuburb' OR pm.meta_key = 'addressState'
AND p.post_status = 'publish'
AND p.post_type = 'listings

我需要的是让所有郊区按照他们所处的状态进行分组。我目前通过获取所有addressSuburb和addressState数据并使用post_id找出哪些郊区在哪state(在PHP中,在查询返回数据之后)。我需要的最终结果如下:

QLD [ suburb1, suburb2, suburb3 ]
VIC [...etc]

仅使用SQL查询可以转换数据吗?如果是这样,怎么样?

0 个答案:

没有答案