我可能想得太多了,但情况是这样的...当修改描述性字段之一并将修改后的预订保存到时,我有一个功能可以将更新#增加一,同时保留相同的预订#表 1 中的新控制编号。
表1
Control # | Booking # | Bunch of Descriptive Fields | Update # |
----------|-----------|-----------------------------|----------|
1 | 1 | ........ | 0 |
2 | 2 | ........ | 0 |
3 | 3 | ........ | 0 |
4 | 1 | ........ | 1 |
5 | 4 | ........ | 0 |
6 | 2 | ........ | 1 |
7 | 1 | ........ | 2 |
目标是让 ObservableCollection 填充一个过滤表,其中使用每个预订编号的最高更新编号,根据预订编号字段中的不同值选择行。我已经尝试了大多数 SELECT 解决方案来从网络创建表,包括 UNION、JOIN、多个 SELECT 语句等,但都没有正常工作。我想要的是这样的结果表:
Control # | Booking # | Bunch of Descriptive Fields | Update # |
----------|-----------|-----------------------------|----------|
7 | 1 | ........ | 2 |
6 | 2 | ........ | 1 |
3 | 3 | ........ | 0 |
5 | 4 | ........ | 0 |
如有任何帮助,我们将不胜感激。
最佳答案
这是一种方法:
select t.*
from t
where t.update = (select max(t2.update) from t t2 where t2.booking = t.booking);
通过在(预订、更新)
(两列,按该顺序)上建立索引,该解决方案可以具有非常好的性能。
关于mysql - 在同一个表中选择多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48455454/