Php 在MySQL查询中将字符串转换为时间戳

Php 在MySQL查询中将字符串转换为时间戳,php,mysql,Php,Mysql,在MySQL中有没有办法将字符串转换为时间戳 例如,我有一个字符串01-05-2016 10:22 am,它需要通过desc获取订单 可以排序吗?在SQL中使用order by函数 SELECT * FROM table_name order by datetime DESC; 这将以降序向php返回值。 无需再次排序。UNIX\u时间戳起作用 及 如果要使用AM/PM表示法,则需要使用STR\u to\u DATE SELECT UNIX_TIMESTAMP( STR_TO_DATE

在MySQL中有没有办法将字符串转换为时间戳

例如,我有一个字符串01-05-2016 10:22 am,它需要通过desc获取订单


可以排序吗?

在SQL中使用order by函数

SELECT * FROM table_name order by datetime DESC;
这将以降序向php返回值。
无需再次排序。

UNIX\u时间戳
起作用

如果要使用AM/PM表示法,则需要使用
STR\u to\u DATE

SELECT UNIX_TIMESTAMP(
    STR_TO_DATE(' 2016-05-01 10:22 am', '%Y-%m-%d %h:%i%p')
);

那是几号?那是5月1日还是1月5日?我的数据库数据类型是varchar。。订单日期字段中的时间大约为2015年2月26日上午10:40。。我想对字段desc.进行排序。。如何?最好的选择是将varchar数据类型更改为日期/时间数据类型;那么你就可以按条款简单地订一张单子,这是不可能的。。要求以这种格式存储数据(mm dd yyyy hh:mm a)并通过desc@G罗伊-那么你应该说这个要求不好。。。。。将字符串视为日期而不是使用实际日期的业务理由是什么?。它不适用于SELECT UNIX_时间戳(STR_TO_日期('2016-05-01 10:22 am','%Y-%m-%d%h:%i%p');