【发布时间】:2015-11-07 18:57:24
【问题描述】:
我有一个如下所示的 MySQL 表:
ID / x_id / x_key / x_value
322 / 4 / 名字 / 杰克
323 / 5 / 名字 / 玛丽
324 / 6 / 姓名 / 约翰
325 / 4 / 隐藏 / 1
326 / 5 / 隐藏 / 0
327 / 6 / 隐藏 / 0
我想从“隐藏”键对应“0”值的人中选择姓名。 在这里,这些选定的“x_values”将是 Mary 和 John
为此,我拥有可以在记录之间进行比较的 x_id。
哪个 x_id 对应于与 x_value = "0" 匹配的 x_key="hide"?
x_id 的 5 和 6。
x_key="name" 的这两个x_id 对应的是哪个“x_values”?玛丽和约翰
换句话说,我尝试获取一个混合这两个查询的查询,以便仅获取 Mary 和 John:
查询 A:
SELECT
x_id,
x_value
FROM
mytable
WHERE
x_key='name'
查询 B:
SELECT
x_id
FROM
mytable
WHERE
x_key='hide'
AND
x_value='0'
我只是没有找到正确的方法来做到这一点。 我该怎么办?
我真的很抱歉解释,但我不是英语,很难解释。
【问题讨论】:
-
你的桌子结构是什么?
-
id - x_id - x_key - x_value。谢谢
-
x_id is a foreign key... 到哪个表? -
抱歉,我编辑了我的帖子以使事情更清楚。