SELECT
art.id,
meta1.meta_value AS meta_key10086,
meta2.meta_value AS meta_key12580
FROM wp_posts AS art
LEFT JOIN wp_postmeta AS meta1
ON meta1.post_id = art.id AND meta1.meta_key = '10086'
LEFT JOIN wp_postmeta AS meta2
ON meta2.post_id = art.id AND meta2.meta_key = '12580'
with
m1 as (select * from meta where meta_key = '10086'),
m2 as (select * from meta where meta_key = '12580')
select case m1.post_id
when null then m2.post_id else m1.post_id end as post_id,
m1.meta_value as meta_key_10086,
m2.meta_value as meta_key_12580
from m1 full join m2
on m1.post_id = m2.post_id and
m1.meta_key='10086' and
m2.meta_key='12580'
从所提供的信息看,如果只是为了单纯输出文章ID,及对应的属性10086和属性12580的值,那么下面这个简单的SQL就能实现
你要的是不是
GROUP_CONCAT
这个聚合函数?试试用
full join
行不。未测试: