Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/57.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 如果列大于;int";,多次出现_Mysql - Fatal编程技术网

Mysql 如果列大于;int";,多次出现

Mysql 如果列大于;int";,多次出现,mysql,Mysql,我有一张表,里面有周数和id | id | week | | 1 | 1 | | 2 | 2 | | 3 | 6 | | 4 | 8 | 我需要做的是根据week的值进行检索。但是,如果行大于某个数字,我还需要多次返回该行 比如(伪), ID 3和ID 4出现两次,因为它们都大于2和6。ID 2将只出现一次,因为它仅大于2 不幸的是,循环查询是不可能的,因为此查询将返回2k+行 任何帮助都将不胜感激,即使解决方案是基于PHP的。将查询拆分为多个查询,然后使用UN

我有一张表,里面有周数和id

| id | week |
| 1  |  1   |
| 2  |  2   |
| 3  |  6   |
| 4  |  8   |
我需要做的是根据week的值进行检索。但是,如果行大于某个数字,我还需要多次返回该行

比如(伪),

ID 3和ID 4出现两次,因为它们都大于2和6。ID 2将只出现一次,因为它仅大于2

不幸的是,循环查询是不可能的,因为此查询将返回2k+行


任何帮助都将不胜感激,即使解决方案是基于PHP的。

将查询拆分为多个查询,然后使用
UNION
合并结果

下面应该会给出您想要的结果

(SELECT * FROM yourTable WHERE week > 2)
UNION ALL
(SELECT * FROM yourTable WHERE week > 6)

编辑包含Lily-thx的提示。

将查询拆分为多个查询,然后使用
联合
合并结果

下面应该会给出您想要的结果

(SELECT * FROM yourTable WHERE week > 2)
UNION ALL
(SELECT * FROM yourTable WHERE week > 6)

编辑的包含了Lily-thx的提示。

为什么会返回两次(ID 3,4)?即使使用OR,它也只返回一次。我听不懂你的问题。通过查询,您需要的最终结果是什么?最终结果是根据周数大于多少,多次显示周数,但同时显示周数是否存在于另一个表中。我目前正在一个像@Sirko所说的联盟中尝试它,但我不确定这是否有效,因为在查询中存在并且不存在。为什么它会返回两次(ID 3,4)?即使使用OR,它也只返回一次。我听不懂你的问题。通过查询,您需要的最终结果是什么?最终结果是根据周数大于多少,多次显示周数,但同时显示周数是否存在于另一个表中。我目前正在一个像@Sirko说的联盟中尝试,但我不确定这是否有效,因为在查询中存在和不存在。我希望你的回答是正确的,因为它的性质是正确的,尽管我不太确定它在我的情况下是否有效。目前正在尝试,我会告诉你结果。@BennyC它不起作用。。。尝试联合所有人而不是联合。它仍然仅在id=4时返回两次。:)工作非常出色,只是通过进一步的参数进一步限制了它。谢谢您的帮助。@Sirko,即使使用UNION ALL rt,这也只为id=4提供两次?甚至我也在尝试……@Lily将
更改为
=
,以获得所需的准确结果。+1希望您的答案正确,尽管我不太确定它是否适用于我的情况。目前正在尝试,我会告诉你结果。@BennyC它不起作用。。。尝试联合所有人而不是联合。它仍然仅在id=4时返回两次。:)工作非常出色,只是通过进一步的参数进一步限制了它。谢谢您的帮助。@Sirko,即使使用UNION ALL rt,这也只为id=4提供两次?甚至我也在尝试……@Lily将
更改为
=
,以获得所需的确切结果。