如何根据面积值和它们的post_id必须匹配在表中找到不同的属性值?假设我想要基于下表的阿拉伯牧场的属性值。我要寻找的结果是Avenida 1,Avenida 2。
post_id 104908,meta_key属性,meta_value Avenida 1
post_id 104908,meta_key Area,阿拉伯牧场
post_id 104909,meta_key属性,meta_value Avenida 2
post_id 104909,meta_key Area,阿拉伯牧场
post_id 104910,meta_key属性,meta_value Al Arta 1
post_id 104910,meta_key区域,绿色
post_id 104911,meta_key属性,meta_value Avenida 2
post_id 104911,meta_key Area,阿拉伯牧场
根据具有匹配post_ID的行,我们知道哪个Property和哪个Area属于在一起。
最佳答案
假设您不介意让therm displayesdin一个用逗号分隔的漂亮列表:
SELECT meta_key, GROUP_CONCAT( DISTINCT meta_value SEPARATOR ', ' ) AS meta_values FROM wp_postmeta GROUP BY meta_key HAVING meta_key LIKE '%Area%';
这将产生如下内容:
meta_key | meta_values
------------------------------------------------
Area 1 | Value 1, Value 2
Area 51 | Aliens, More Aliens, Even more aliens
如果不希望将其分组,则始终可以返回单独的行:
SELECT DISTINCTROW meta_key, meta_value FROM wp_postmeta WHERE meta_key LIKE '%a%' ORDER BY meta_key, meta_value;
哪个会产生
meta_key | meta_value
----------------------
Area 1 | Value 1
Area 2 | Value 2
Area 51 | Aliens
Area 51 | More aliens
希望这可以帮助。