我有下表:
| 编号 | 产品编号 | 价格 | 集团 | | 1 | 123123 | 100 | 1 | | 2 | 123123 | 200 | d845f | | 3 | 91123 | 150 | 1 | | 4 | 2131238 | 100 | 1 | | 4 | 5678689 | 250 | 1 |
所以我想选择 group 所在的所有价格IN (1, 'd845f')
。对于其中一些只有一行输出,例如
| 3 | 91123 | 150 | 1 |
但对于某些人来说,有两行:
| 1 | 123123 | 100 | 1 | | 2 | 123123 | 200 | d845f |
我用类似的东西进行选择
SELECT * FROM table WHERE `group` IN (1, 'd845f')
where1
和d845f
是我在 PHP 中指定的设置参数。
所以总是有一行group = 1
,但可以选择第二行,就像上面的例子一样,'d845f'
我的 IN 选项中的 group 。
因此,当我有两行时,我希望 MySQL 只显示其中之一:带有'd845f'
.
那么我该怎么做呢?
我想获得所有带有group = 1
参数的产品,但是当group = 'd845f'
我只想获得一行时: with group = 'd845f'
。
我也想在没有嵌套 SELECT 的情况下这样做(允许加入)。谢谢!