SQL server查找date difference in days输入日期格式为dd/mm/yyyy
本文关键字:格式 dd 日期 mm yyyy 输入 查找 server date difference days | 更新日期: 2023-09-27 18:15:47
我正在开发一个项目,我想要我的日期格式在dd/mm/yyyy
(印度格式/英国格式)。在我的数据库表中,我使用了字符串数据类型的这个字段。
我有两个字段In_date和Out_date,通过这些我计算总天数。
现在我想以天为单位计算这两个日期之间的差。SQL Server默认格式为"mm/dd/yyyy
"。每当我执行
select Datediff(DAY, 'In_date', 'Out_date') from Table;
它给我错误错误转换日期从/到字符串。但是当我执行
select Datediff(DAY, '05/28/2013', '05/26/2013') from Table;
它给了我完美的答案。
请帮。
您应该只在数据库中存储日期为DateTime
s。这将允许你正确地比较日期。格式应该在应用程序层处理。
试试这个-
SET DATEFORMAT mdy
SELECT DATEDIFF(DAY, '05/28/2013', '05/26/2013')
但希望使用ISO日期格式(ymd):
SELECT DATEDIFF(DAY, '20130528', '20130526')
试试这个:
SET DATEFORMAT dmy;
select Datediff(DAY, In_date, Out_date) from Table;
它试图将列名转换为日期,但它们不是日期。删除'In_date'和'Out_date'周围的撇号,它将把它们识别为列而不是字符串。
select Datediff(DAY, In_date, Out_date) from Table
select Datediff(DAY, In_date, Out_date) from Table;