gpt4 book ai didi

sql - 如何从日期时间中删除时间

转载 作者:行者123 更新时间:2023-12-03 07:24:02 25 4
gpt4 key购买 nike

数据库中的字段DATE具有以下格式:

2012-11-12 00:00:00

我想从日期中删除时间并返回日期,如下所示:

11/12/2012

最佳答案

首先,如果您的日期是 varchar 格式,请更改它,store dates as dates它会为您省去很多麻烦,而且最好尽早完成。问题只会变得更糟。

其次,一旦有了日期,请勿将日期转换为 varchar!保持日期格式,并在应用程序端使用格式来获​​取所需的日期格式。

根据您的 DBMS 有多种方法可以执行此操作:

<小时/>

SQL-Server 2008 及更高版本:

SELECT  CAST(CURRENT_TIMESTAMP AS DATE)
<小时/>

SQL-Server 2005 及更早版本

SELECT  DATEADD(DAY, DATEDIFF(DAY, 0, CURRENT_TIMESTAMP), 0)
<小时/>

SQLite

SELECT  DATE(NOW())
<小时/>

甲骨文

SELECT  TRUNC(CURRENT_TIMESTAMP)
<小时/>

Postgresql

SELECT  CURRENT_TIMESTAMP::DATE
<小时/>

如果您需要在报告中使用特定于文化的格式,您可以明确说明接收文本框的格式(例如 dd/MM/yyyy),也可以设置语言,以便显示相关的日期格式那种语言。

无论哪种方式,这在 SQL 之外都可以更好地处理,因为在 SQL 中转换为 varchar 会影响您在报告中可能执行的任何排序。

如果您不能/不会将数据类型更改为 DATETIME,则在发送到报表服务并按所述处理之前,仍将其转换为 SQL 中的日期(例如 CONVERT(DATETIME, yourField))如上所述。

关于sql - 如何从日期时间中删除时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14279849/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com