当前位置: 首页 > 面试题库 >

按日期排序(varchar)?

熊嘉茂
2023-03-14
问题内容

我想按日期订购。

例如

table_date
February 2011
January 2011
December 2010

我已经尝试过:

SELECT distinct(table_date) FROM tables ORDER BY table_date DESC

伯,这是行不通的。

我得到这个代替:

January 2011
February 2011
December 2010

你能帮我吗?


问题答案:

如果要按日期排序, 请将其存储为日期而不是html" target="_blank">字符串。 除非您的日期字符串的格式为yyyy-mm-dd,否则它不会按您希望的顺序排序。

数据库可以按原样进行足够的工作,而无需人们加倍努力,因此,您应该尽可能地避免我喜欢的 SQL体操。

将其存储为日期,然后(如果需要)使用日期函数以形式获取它February 2011

这样会比您尝试做的要容易得多。

即使由于代码限制而 不能
更改任何当前列,也可以始终将另一列添加到数据库中,TABLE_DATE_AS_DATE然后放入插入/更新触发器以根据进行填充TABLE-DATE

然后做:

update table x set table_date = table_date

或类似方法触发所有行的触发器。

然后,您的查询仍然可以获取,table_date但可table_date_as_date用于订购。当然这是一个麻烦,但是在过去当务之急是代码无法更改时,我不得不使用类似的技巧,因此我们不得不求助于DBMS的技巧。



 类似资料:
  • 问题内容: 我知道这一定是相对简单的,但是我有一个JSON数据集,我想按日期排序。到目前为止,我无处不在遇到问题。现在,我将日期存储为。如果有帮助,我可以访问jquery,但是我意识到.sort()是本机JS。提前致谢。 问题答案: 假设您有一个javascript对象数组,只需使用自定义排序功能即可: Array 方法使用回调函数对数组进行排序,该回调函数传递给数组中的元素对。 如果返回值为负,

  • 问题内容: 我正在尝试按日期顺序显示文件数组(最后修改)。 我已经完成了遍历数组并将其排序到另一个数组中的购买循环,但是有没有更简单(更有效)的方法来做到这一点? 问题答案: *从PHP 7.2.0开始, *警告 已被弃用。强烈建议不要使用此功能。 为了后代的目的,如果在接受的答案中链接的论坛帖子丢失或不清楚,则所需的相关代码为: 在我的系统上对此进行了测试,并验证了它确实可以根据需要按文件mti

  • 我有一个JTable,它有两列,文件名和日期都被修改了。我为第一列添加了name String,并为第二个dateTime列添加了。 我将dateTime列呈现为字符串。 我还启用了 编辑2 我已经测试并弄明白了。如果使用DefaultTableModel而不重写它的getColumnClass()方法,那么在使用Date或Number列时会遇到麻烦。

  • 问题内容: 我试图使功能超出其书面限制,我需要的不仅仅是当前支持的alpha排序。我需要对结果进行排序,以按修改日期排序。 我尝试了一些在这里找到的解决方案,以及其他来自不同网站的解决方案,但是没有一个适合我,因此我认为在这里发布是合理的。 到目前为止,我尝试过的是: 但是,这似乎对我不起作用,它仅返回3个结果,但应该返回16个结果,因为文件夹中有16张图像。 问题答案:

  • 问题内容: 我尝试按ASC顺序在表上使用Spring-Data-JPA创建应用程序,但它给了我一个错误: 为什么 ? 或者 问题答案: 尝试在“全部”和“订单”之间添加“按”,如下所示:

  • 问题内容: 我要显示的最后5个输入的特定ID数据。我的SQL查询是 是DATETIME 它显示按日期而非时间排序的最后5个条目。然后在同一日期按字母顺序排序。 假设我在同一日期有3个条目,并带有差异时间 比方说 查询以上查询后 我得到的是 按日期排序,然后按字母顺序 我想要的是这个.. 还按日期和时间排序… 问题答案: 如果要最后5行(以升序排列),则需要一个子查询: 第10次阅读问题后,这可能是