如果column大于"int",则出现多次

Ben*_*Ben 1 mysql

我有一张包含周数和id的表

| id | week |
| 1  |  1   |
| 2  |  2   |
| 3  |  6   |
| 4  |  8   |
Run Code Online (Sandbox Code Playgroud)

我需要做的是根据周的值来检索.但是如果行大于某个数字,我还需要多次返回该行.

例如(伪),

if week > 2
and week > 6

| id | week |
| 2  |  2   |
| 3  |  6   |
| 3  |  6   |
| 4  |  8   |
| 4  |  8   |
Run Code Online (Sandbox Code Playgroud)

ID 3和ID 4出现两次,因为它们大于2和6. ID 2只会出现一次,因为它只大于2.

不幸的是循环查询是那种出了问题,因为这查询将返回2K +行.

即使解决方案是基于PHP的,也会非常感谢任何帮助.

Sir*_*rko 5

在此输入图像描述将查询拆分为多个查询,然后使用合并结果UNION.

以下内容应该为您提供所需的结果.

(SELECT * FROM yourTable WHERE week > 2)
UNION ALL
(SELECT * FROM yourTable WHERE week > 6)
Run Code Online (Sandbox Code Playgroud)

编辑包括莉莉的提示 - thx.

  • @BennyC它不起作用...并尝试**联盟所有**而不是联盟.它仍然只返回id = 4两次.:) (2认同)
  • @Lily将`>`改为`> =`以获得OP想要的确切结果. (2认同)