我有这样的 table
Post_ID KEY Value
1 year 2014
1 month 09
2 year 2014
2 month 10
3 year 2014
3 month 09
在此表中,我有 post_id 、键(表示帖子的年份和月份)和值(表示年份值和月份值)
我想返回所有发布为“2014”且月份为“09”的 post_ID,这意味着我有值 1 和 3。
最佳答案
我会计算有多少属性符合此规范并使用 having
子句过滤它们的 count
:
SELECT post_id
FROM my_table
WHERE (key = 'year' AND value = '2014') OR
(key = 'month' AND value = '09')
GROUP BY post_id
HAVING COUNT(*) = 2
关于Mysql查询返回基于同一表中多列的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25962746/