Mysql 使用varchar中的日期对日期进行排序,在转换为日期时间时使用MM/DD/YYY发出问题

Mysql 使用varchar中的日期对日期进行排序,在转换为日期时间时使用MM/DD/YYY发出问题,mysql,sql,Mysql,Sql,日期时间转换存在问题,当前“xl_日期”的日期为MM/DD/YYYY 查询示例:- SELECT orders.*, customer.id AS userid, customer.login, convert(datetime, orders.xl_date, 101) as ddates FROM orders LEFT JOIN customer ON orders.userid = customers.id WHERE 1 ORDER BY ddates DE

日期时间转换存在问题,当前“xl_日期”的日期为MM/DD/YYYY

查询示例:-

SELECT orders.*, 
  customer.id AS userid, 
  customer.login, 
  convert(datetime, orders.xl_date, 101) as ddates 
FROM orders 
LEFT JOIN customer 
ON orders.userid = customers.id 
WHERE 1 
ORDER BY ddates DESC LIMIT 0, 30
您需要使用函数。比如说-

SELECT STR_TO_DATE(orders.xl_date, '%m/%d/%Y') AS as ddates FROM orders
你的问题是-

SELECT
  orders.*, 
  customer.id AS userid, 
  customer.login, 
  STR_TO_DATE(orders.xl_date, '%m/%d/%Y')as ddates 
FROM orders 
  LEFT JOIN customer 
    ON orders.userid = customers.id 
WHERE
  1 
ORDER BY
  ddates DESC
LIMIT 0, 30

您是否可以通过SQLFIDLE与我们共享示例数据?