下表是一个销售业绩表我对销售业绩做一个排名,显示出排名结果
重点是自己和自己比较找出a1的Sales小于a2的Sales的数据 或者Name和Sales都相等的数据(a1里的全部数据去对比a2里的每一个数據)
结果如图,结果一目了然只要分组count一下就是排名了。
其实还有一个问题就是有并列排名比如上图中有个并列第3的,第四名就不存茬了
这些都可根据具体的规则用程序去调整,嘻嘻
有时我们会遇到一些表里有些重复的数据如图:
第一种,去除全部重复的数据除id以外
Ps:@t 定义一个虚拟表向虚拟表里插入用distinct去重的数据,清空原表再把虚拟表里的数据插入到原表。
第二种去除指定列重复的数据。
Ps:sql很简單分组后取分组里一个id,这里取最小的一个,删除除此之外的id
Ps:一目了然就不多解释了
分组后除此分组列其他列要显示就要使用聚合函数,只能显示结果中的一个或数量或合计
我们可以利用for xml path的特性把全部数据都显示在一列中并指定显示格式
逗号间隔显示分组后非分组列:
像这样长的又帅又酷的男生世界仩还有几个$$$$王者大能的视频原声
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。