【问题标题】:MYSQL Order by Clause is not working on Currencies table when column name is Date and column Data Type is Date and time当列名称为日期且列数据类型为日期和时间时,MYSQL Order by Clause 不适用于货币表
【发布时间】:2019-10-16 18:46:37
【问题描述】:

我有货币数据库表。我使用谷歌金融 API 以及日期和时间每天更新货币。我的列名是Date,数据类型是datetime

我想获取基于日期在数据库中最后更新的美元汇率,而不是表的 id。

以下查询始终显示相同的结果。

SELECT * FROM `currencyrates` WHERE CurrencyCode='USD' AND Rate > 0  ORDER BY 'Date' ASC

SELECT * FROM `currencyrates` WHERE CurrencyCode='USD' AND Rate > 0  ORDER BY 'Date' DESC

它总是显示 2015 年的记录,而应该首先显示 2019 年的记录,因为数据库中存在记录我通过在我的 SQL 工具 (SQLyog) 中排序来检查它。

【问题讨论】:

  • 请注意,'Date' 是一个字符串常量。也许你在想 `Date`
  • @Strawberry 让我试试看。
  • @Strawberry 是的,它成功了,谢谢。

标签: mysql datetime sql-order-by


【解决方案1】:

*SELECT * FROM currencyrates WHERE CurrencyCode='USD' AND Rate >= 0 ORDER BY 'Date' ASC

SELECT * FROM currencyrates WHERE CurrencyCode='USD' AND Rate >= 0 ORDER BY 'Date' DESC*

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-11-29
  • 2010-10-27
  • 2018-01-26
  • 1970-01-01
  • 1970-01-01
  • 2019-12-10
  • 1970-01-01
相关资源
最近更新 更多