我试图让commentId问type = x及target = x,
通常(这是一个例子),表的结构应如下所示:
+-----------+-------+--------+
| commentId | type | target |
+-----------+-------+--------+
| 1 | post | 2 |
| 2 | post | 8 |
| 3 | video | 6 |
+-----------+-------+--------+
Run Code Online (Sandbox Code Playgroud)
在这种情况下,我可以使用此查询来获取commentId:
SELECT `commentId` FROM `comment_datas` WHERE type = 'post' AND target = '2'
Run Code Online (Sandbox Code Playgroud)
但这是表的真实结构(使用键值设计):
+-----------+--------+-------+
| commentId | name | value |
+-----------+--------+-------+
| 1 | type | post |
| 1 | target | 2 |
| 2 | type | post |
| 2 | target | 8 |
| 3 | type | post |
| 3 | target | 6 |
+-----------+--------+-------+
Run Code Online (Sandbox Code Playgroud)
现在我不知道如何得到commentId我上面写的查询,任何想法?
集团由commentId.然后,您可以过滤具有至少一条记录的组,并使用您想要的条件
SELECT commentId
FROM comment_datas
GROUP BY commentId
HAVING sum(name = 'type' and value = 'post') > 0
AND sum(name = 'target' and value = '2') > 0
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
949 次 |
| 最近记录: |