mySql如何按列值排序选定的结果

时间:2013-10-30 17:30:33

标签: mysql

我有一个数据库表。

在此表中,我有列名User_Id。

我想按3个级别订购结果:

  1. 第一个结果应该是特定用户的ID 2 + 3。一些专栏订购。
  2. 可以像这样进行某种查询:

    Select * From User
    Order By User_Id = 1223, Start_Date, Last_Name;
    

    更新

    这是我的查询:

    SELECT Events.Event_Id, Events.Name as Event_Name, Events.Place, Events.Start_Time, Events.End_Time, getEventInvitedUsers(Events.Event_Id) as Invited_Users, getEventAttendingUsers(Events.Event_Id) as Attending_Users,
        Users.Facebook_Id, Users.Name as User_Name, Users_In_Events.Is_Attending as Is_Attending
    FROM Users_In_Events 
    Left Join Events
    On Users_In_Events.Event_Id = Events.Event_Id
    Left Join Users
    On Events.Facebook_Id = Users.Facebook_Id
    WHERE 
        Users_In_Events.Facebook_Id = 613714903         
        And 
        (Events.Start_Time > now()
        Or
        (Events.Start_Time > now() And Events.End_Time < now()))
        Order By Events.Facebook_Id= 613714903, Users_In_Events.Is_Attending, Events.Start_Time;
    

    查询从事件表中返回所有类型的事件。

    我想知道是否可以按照我在Events.Facebook_Id= 613714903上面的代码中所写的那样对结果进行排序

1 个答案:

答案 0 :(得分:0)

我能猜到的最好的是:

Select * From User
where User_Id = 1223
Order By User_Id, Start_Date, Last_Name;

这应该获取user_id为1223的记录,并首先按User_Id排序(为什么?它们都是1223,所以不需要排序),然后是日期和姓氏。

但是,说实话,你的问题似乎没有意义......在User表中,每user_id个通常只有一条记录,所以不应该有多行排序......