是否可以将sql语句中的ORDER BY
设置为您想要的值?例如,如果我想按此顺序选择Day的值:Thu, Sat, Sun, Mon
SELECT *
FROM `NFL_Games`
WHERE Week = '1'
ORDER BY Day
答案 0 :(得分:7)
您可以使用case when
条款进行个人订购......
order by
(case Day
when 'Thu' then 1
when 'Sat' then 2
when 'Sun' then 3
when 'Mon' then 4
else 5 end),
Day
答案 1 :(得分:0)
是的,您可以使用ORDER BY
SELECT * FROM `NFL_Games` WHERE Week = '1' ORDER BY DAYOFWEEK( date_field )
答案 2 :(得分:0)
由于Order by
是执行查询时处理的最后一个子句,如果您的select语句具有day列(根据表'NFL_Games'中的日期计算,或者表中有'Day'列,则为yes)可以指定最终集合中行之间的排序。
答案 3 :(得分:0)
像这样的东西会起作用..可能因为案例陈述而有点烦人但是会做这个工作。
SELECT *,
CASE fstrDay
WHEN 'Thursday' THEN 0
WHEN 'Friday' THEN 1
WHEN 'Saturday' THEN 2
WHEN 'Sunday' THEN 3
WHEN 'Monday' THEN 4
WHEN 'Tuesday' THEN 5
WHEN 'Wednesday' THEN 6
END AS flngOrder
FROM NFL_Games
WHERE Week = '1'
ORDER BY flngOrder ASC
答案 4 :(得分:-2)
这似乎完全合法;您也可以按升序或降序排序。