我想拉出用户有Color = blue和Color = red的所有行。我有兴趣拉出这些多行来确定哪些用户将其颜色从蓝色变为红色,或从红色变为蓝色。
我现在的一般查询就是这个。有什么不对,怎么才能改进呢?谢谢!
这是否会返回Zero结果,因为我要求行的值同时为蓝色和红色? (这是不可能的) 我担心的是,如果我使用OR而不是AND,那么我将为用户提供蓝色或红色的行,但两种颜色之间没有变化。
我希望结果只显示第1行和第4行
SELECT *
FROM Table a
WHERE a.color='blue'
AND a.color='red'
表格结构如下
Row | Date | Userid | Session | Color
1 | 11/1 | 001 | 24 | Blue
2 | 11/2 | 002 | 25 | Green
3 | 11/2 | 003 | 26 | Yellow
4 | 11/6 | 001 | 32 | Red
答案 0 :(得分:0)
明显的问题是:
SELECT *
FROM Table a
WHERE a.color='Blue'
OR a.color='Red'
如果您愿意,您将需要存储具有以前颜色的字段(类似于历史记录),否则数据库中没有足够的信息来正确评估已更改的颜色。