【发布时间】:2011-10-12 11:13:00
【问题描述】:
我的表 price 具有当前架构:
item date shift price1 price2
1 20110723 day 40 50
1 20110723 night 42 52
1 20110723 weekend 42 52
2 20110723 Night 40 50
...
并且我想为表中的每个项目保留最高价格 1 或价格 2 的记录,即从表中删除价格 1 或价格 2 较小的记录。 sql怎么写?
我使用 sybase ASE 12.5
【问题讨论】:
-
主键是什么,如果有的话? (项目、日期、班次)?
-
那么,如果
item=7有三行,price1,price2=30,100、100,30和40,40,哪些应该被删除? -
@cularis:您可以假设项目、日期、班次为键。
-
@ypercube: 40,40 将被删除。
标签: sql select group-by max sql-delete