sql查询 如何根据多个条件分组 筛选 需要的数据
请问如图示显示,如何通过sql只显示黄色数据条件标准:如果驾校、身份证、日期、状态均一致保留id做大的如果身份证和日期同时一致按状态(办结、待受理、退办)的优先级保留一条...
请问 如图示显示,如何通过sql只显示黄色数据 条件标准:如果驾校、身份证、日期、状态 均一致保留id做大的如果身份证和日期同时一致按状态(办结、待受理、退办)的优先级保留一条数据(办结优先级最高)如果身份证一致、日期不一致保留日期最大的数据
请提供完整sql语句 展开
请提供完整sql语句 展开
3个回答
展开全部
SELECT MAX(id),驾校,身份证,姓名,类型,MAX(日期),CASE WHEN MAX(状态)<>MIN(状态)
THEN '办结' ELSE MAX(状态) END
FROM TABLE GROUP BY 驾校,身份证,姓名,类型
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
select 表名 where id in (select max(id) from 表名 group by 驾校、身份证、日期、状态 )
union
其他条件的
union
其他条件的
更多追问追答
追问
主要是后面两个条件不知道怎么弄,
办结、待受理、退办 中保留优先级最高的
身份证一致、日期不一致保留日期最大的数据
追答
优先级怎么确定?不行就加个字段,123的顺序分别表示办结、待受理、退办优先级,高的放前面
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询