PHP:按可用日期和可用时间排序
Posted
技术标签:
【中文标题】PHP:按可用日期和可用时间排序【英文标题】:PHP : Order By Available Day and Available time 【发布时间】:2021-04-19 12:39:48 【问题描述】:我有一个表student_availability
,其中有两个字段available_day
类型为varchar,available_time
类型也是varchar。
关于插入的表格数据如下:
我希望这些数据按available_day
(例如:周日、周一、周二)和available_time
的顺序排列。
(例如:'07:00 - 08:00 AM'、'08:00 - 09:00 AM'、'09:00 - 10:00 AM'、'10:00 - 11:00 AM'、'11: 00 - 12:00 PM') 等
我尝试过简单的 sql 查询:
SELECT *
FROM `student_availability`
ORDER BY `available_day` AND `available_time`
but its not giving accurate results.
php QUERY :
Studentavailability::orderBy('available_day')->orderBy('available_time')->get();
【问题讨论】:
该查询甚至不应该运行。请检查您是否向我们展示了 REAL 语法 但它没有给出准确的结果 有点太笼统了!!它在生产什么?它产生了什么问题 看起来你正在使用一个框架,告诉我们(或标记)你正在使用的框架很有用 @RiggsFolly 感谢您的建议。我只想要我提到的结果,因为我无法对现有表进行任何修改。 最好将avail_from
和 avail_to
都存储为 DATETIME 类型。然后,您可以获得您当前拥有的所有信息以及更多信息,并且排序会很容易
【参考方案1】:
SELECT *
FROM `student_availability`
ORDER BY `available_day` **AND** `available_time`
这将在 available_day 之前订购并检查 (?) available_time 如果你想按 available_day 排序,在结果内部,也按 available_time 排序,你必须写:
SELECT *
FROM `student_availability`
ORDER BY `available_day`, `available_time`
【讨论】:
谢谢里格斯! ;)以上是关于PHP:按可用日期和可用时间排序的主要内容,如果未能解决你的问题,请参考以下文章