很好地阅读了类似的主题,但我不能完全 a) 找到一个与我的场景相匹配的主题,或者 b) 足够了解其他主题以适应/定制/调整我的情况。
我有一张桌子,重要的领域是;
+------+------+--------+--------+
| ID | Name | Price |Status |
+------+------+--------+--------+
| 1 | Fred | 4.50 | |
| 2 | Fred | 4.50 | |
| 3 | Fred | 5.00 | |
| 4 | John | 7.20 | |
| 5 | John | 7.20 | |
| 6 | John | 7.20 | |
| 7 | Max | 2.38 | |
| 8 | Max | 2.38 | |
| 9 | Sam | 21.00 | |
+------+------+--------+--------+
ID 是一个自动递增的值,因为记录会在一天中添加。NAME 是一个主键字段,可以在整个表中重复 1 到 3 次。每个 NAME 都有一个 PRICE 值,每个 NAME 可能相同也可能不同。
还有一个 STATUS 字段需要根据以下内容进行填充,这实际上是我卡住的部分。
如果每个 DISTINCT 名称仅附加一个价格,则状态 = 'Y'。如果每个 DISTINCT 名称都附加了多个价格,则 Status = 'N'。
使用上表,ID 的 1、2 和 3 应为“N”,而 4、5、6、7、8 和 9 应为“Y”。
我认为这很可能涉及某种形式的 JOIN、GROUP 和 DISTINCT 组合,但我不知道如何将其放入 SQL 的正确顺序中。