ios – 如何在SQLITE中按日期/时间与AM / PM进行排序

我的日期格式是:“yyyy-MM-dd”(2017-03-23)

我的时间格式是:“hh:mm a”(晚上10:15)

如果在MYSQL中你可以执行此操作以使用am / pm转换时间:

SELECT * FROM table_name ORDER BY STR_TO_DATE(timeField,'%h.%i%p');

你怎么能在SQLITE中执行此操作?

我尝试了这个但是没有用:

SELECT appointment_date, start_time FROM appointment order by appointment_date, DATE(start_time, '%h:%i %p')

结果:
Image Link

据说AM首先应该是PM,因为默认是ASC,我也尝试过使用DESC,但没有正确安排结果.

最佳答案 您似乎将start_time()值存储在字符串中.

你可以做:

order by appointment_date,
         (case when start_time like '% am' then 1 else 2 end),
         start_time

SQLite并不真正支持日期/时间格式的am / pm.但是,这很容易实现.

点赞