不知道这个题目是否是最合适的.现在在做北大青鸟S1结业MYQQ项目.
最近联系人这里不会弄了.
如何让他倒着排序.
因为最后一个.就是最近的联系人.现在他是从第一个开始读取.第一个肯定是第一个聊天的.最后一个才是最近聊天的.
怎么样让他倒着排序?
还有如何判断如果这个人已经在sideBar控件里了.就不在添加了?下面是我的代码:
                connection.Open();
                string sql = string.Format("select nickname,faceid,ToUserId from users u join Messages f on f.ToUserId=u.id where FromUserId={0}", UserHelper.loginID);
                SqlCommand cmd = new SqlCommand(sql, connection);
                SqlDataReader dr = cmd.ExecuteReader();
                while (dr.Read())
                {
                    //创建项
                    SbItem item = new SbItem(dr["nickname"].ToString(), Convert.ToInt32(dr["faceid"]));
                    item.Tag = Convert.ToInt32(dr["ToUserId"].ToString());                    //添加项
                    sideBar2.Groups[0].Items.Add(item);
                }

解决方案 »

  1.   

    order by 联系时间 desc
    或List<T>自定义排序
      

  2.   

    desc属于基本功,不属于速成内容,肯定不会教。
      

  3.   

    主键?不是只有SQL才有主键?怎么实现.不懂
    PS:以后不报家门了.有点丢家门的脸
      

  4.   

    使用 distinct 关键字。string sql = string.Format("select nickname,faceid,distinct ToUserId from users u join Messages f on f.ToUserId=u.id where FromUserId={0}", UserHelper.loginID);
      

  5.   

    看着lz挺认真的一个人。真忍不住劝下,也不能怪北大青鸟。不是每个人都适合写程序。360行干嘛非要当程序员。初级程序员的工资还不如厨师、汽车修理工、货柜车司机、公关推销,学起来也不简单,还累,干到30岁搞不好就淘汰了。lz真的对编程情有独钟还是真的百无一用,走投无路了?
      

  6.   


    培训机构出来的就是笨,一样是毕业设计,只知道自己写,瞧,人家大学出来的,那都是用爹妈的RMB直接买的。
      

  7.   

      这里不是说楼主怎么怎么样... 楼主能来问问题 说明他在用功... 天下没有一个努力之人是可以被嘲笑的..
      以上各位只是对当前这些培训机构进行了讽刺.....  .net和java是容易上手不错,但是编程并不是只有那几个If和else就可以的, 你可以说大学生很多不学无术, 但是你不可否认大学生他有一套完整的理论体系在支持着,他们知道那里该怎么样,而且知道为什么是那样 这样才能灵活的去进行编程.  而培训机构不一样,他只知道眼前的即得利益,只教个ABC 只知道赚钱,而培训出來的大部分人就连十分之一个程序员素养都没有....而这部分人充斥了程序界的半壁江山 所以外界对程序员的看法就很不好, 这就是为什么我们看到一些培训机构的都冷眼相对的原因...
      

  8.   

    其实我不觉得上培训学校的人有什么不好,许多人是有上进心才花大价钱被骗进去的。我觉得一切都应该让学校负责任,刚学过SQL竟然不知道基本的排序orderby语法,这怎么可能结业?
      

  9.   

    第一学期是什么都不教的!
    SQL也是草草教下
    我问学好这个能开发游戏?
    他们说可以
    就这样我给骗进去的
    只学了第一学期就出来了!在那真是浪费钱的!
      

  10.   

    我觉得我在的昆明北大青鸟还是可以的呀.
    这些老师都教了.不过我们一星期只有1 / 3 /5 的早上有课.其他时间都靠自己了.
    学了6个月.现在是S1的结业MYQQ项目.
    按照实战课本上的.都已经完成了.
    现在是在实现一些新的功能.所以有些控件不是很清楚
    我们是学2年的.学费大概2W5左右.
    上课跟高中一样的严格.只是休息时间多.总比去大学混日子的强.
    回复15楼的.本人从小学2年纪就接触电脑了.从最开始的红警.到后来的星际.虽然说那个时候上网5元/小时
    到后面的上网-石器时代.本人是对电脑一往情深.虽然高考才考198.
    我觉得每个人都有一种喜欢的学习环境.我就喜欢培训机构这样环境
    最后学不学的出来.是看个人.
      

  11.   


    我的代码如下:
    select distinct nickname,faceid,ToUserId from users u join Messages f on f.ToUserId=u.id where FromUserId=10000 order by f.Id desc错误提示:
    消息 145,级别 15,状态 1,第 1 行
    如果指定了 SELECT DISTINCT,那么 ORDER BY 子句中的项就必须出现在选择列表中。啥意思啊?这个好像真没教过.1期
      

  12.   

      普通的计算机科学与技术系的专业基础课,我刚才还少说了很多 比如 网络基础 汇编 这些你不懂你怎么做系统? 难道敲一辈子的if else?? 而且敲个If else 还要上论坛来问?
      

  13.   

    十分强悍啊,哈哈
    desc倒序
    asc顺序
      

  14.   

    select nickname,faceid,ToUserId from users u 
    inner join (select ToUserId,max(F.id) as Fid  from Messages group by ToUserId) f on f.ToUserId=u.id where FromUserId=10000 
    order by  Fid desc 
    这个可以吗?
      

  15.   


    消息 4104,级别 16,状态 1,第 1 行
    无法绑定由多个部分组成的标识符 "F.id"。
    不行呀.