sql - 删除行中的重复项
问题描述
我需要一个查询来从下面列出的数据类型中删除重复项。
SurveyDate Rentaldate outbound inbound vehiclesize lolarate kayrate
1/24/19 2/7/19 5 5 small 832 null
1/24/19 2/7/19 5 5 small **855** null
1/24/19 2/7/19 5 5 large 831 null
1/24/19 2/7/19 5 5 large **851** null
1/24/19 2/7/19 5 5 small null 432
1/24/19 2/7/19 5 5 small null **455**
1/24/19 2/7/19 5 5 large null 431
1/24/19 2/7/19 5 5 large null **451**
要求它获取具有相同车辆大小的所有行的最大值。例如,输出应如下所示:
SurveyDate Rentaldate outbound inbound vehiclesize lolarate kayrate
1/24/19 2/7/19 5 5 small **855** null
1/24/19 2/7/19 5 5 large **851** null
1/24/19 2/7/19 5 5 small null **455**
1/24/19 2/7/19 5 5 large null **451**
以下是我为消除重复而整理的查询,让我知道您对此的看法:
select
SURVEY_DATE,
OUTBOUND, INBOUND,
MAX(lola_RATE) AS lola_SM,
MAX(kay_RATE) AS kay_SM
from TABLE1
group by OUTBOUND, INBOUND, SURVEY_DATE;
解决方案
很近。但是现在您的查询只返回一行:
SURVEYDATE RENTALDATE OUTBOUND INBOUND LR KR
---------- ---------- ---------- ---------- ---------- ----------
1/24/19 2/7/19 5 5 855 455
如果您添加vehiclesize
到选定的列和 ingroup by
子句,它将显示:
SURVEYDATE RENTALDATE OUTBOUND INBOUND VEHICLESIZE LR KR
---------- ---------- ---------- ---------- ----------- ---------- ----------
1/24/19 2/7/19 5 5 small 855 455
1/24/19 2/7/19 5 5 large 851 451
如果你想单独显示空列,你可以使用这个条件分组:
select SurveyDate, Rentaldate, outbound, inbound, vehiclesize,
max(lolarate) lr, max(kayrate) kr
from table1
group by
SurveyDate, Rentaldate, outbound, inbound, vehiclesize,
case when lolarate is null then 1 end,
case when kayrate is null then 1 end
SURVEYDATE RENTALDATE OUTBOUND INBOUND VEHICLESIZE LR KR
---------- ---------- ---------- ---------- ----------- ---------- ----------
1/24/19 2/7/19 5 5 small 855
1/24/19 2/7/19 5 5 small 455
1/24/19 2/7/19 5 5 large 851
1/24/19 2/7/19 5 5 large 451
推荐阅读
- graphviz - Graphviz Java,使图形对称并指定边长
- github - Github GrapQL API 仅返回每个上下文的最后一个 StatusContext
- json - 我得到这个错误我得到这个错误“字节类型的对象不是JSON可序列化的”,同时测试我的reverse_backdoor aganist我的真实计算机
- bootstrap-5 - Bootstrap 5 文件上传显示不正确
- json - AWS Codepipeline webhook 的正确发布请求正文是什么?
- jquery - jQuery UI resizable - 如何计算rails6中的resize像素差异
- python - 创建一个新的数据框,计算另一个数据框中两个日期之间的所有日期
- xamarin - 错误 - TextDecoration 删除线在 iOS 上不起作用
- javascript - 我在heroku上部署了电报机器人,但它不起作用
- html - Markdown 和 HTML 支持 - aws-samples/aws-lex-web-ui