zoukankan      html  css  js  c++  java
  • 解决Sql中DIstinct与Order By共同使用的冲突问题

    1.需求场景:

      需要把最新更新文章的前五名作者展示出来。

    2.解决问题第一步:

      

    select top 5 creator from table order by updateDate desc
    

    结果:显示五条记录,但是名字是重复的。

    3.解决问题第二步:

    加Distinct

    select distinct top 5 creator from table order by updateDate desc
    

    结果:报错。如果指定了 SELECT DISTINCT,那么 ORDER BY 子句中的项就必须出现在选择列表中。

    4.解决问题第四步:

    按照错误提示修改代码

    select  distinct top 5 creator,updatedate from table order by updatedate desc
    

     结果还是会出现重复的,日了狗了,去百度吧

    5.正确答案:

    select top 5  creator from brands  group by creator  order by max(updateDate) desc
    

     总结:对max()函数有了新的感觉了。并不只是放在select里简单获取一下最大值了,他其实也可以像asp.net webform Gridview下的rowdatabind()的那个感觉一样,随着结果集变动。

  • 相关阅读:
    jsp九大内置对象和4个域对象
    小甜点
    response编码
    request请求编码处理
    防盗链模拟
    request浏览器判断
    request获取ip
    ServletConfig
    HttpServlet原理
    Servlet,GenericServlet,httpServlet区别
  • 原文地址:https://www.cnblogs.com/chenxizhaolu/p/6932289.html
Copyright © 2011-2022 走看看