我有一个SQL查询,我将在其中传递dd/mm/yyyy
,但SQL查询需要mm/dd/yyyy
。
如何启用此查询以获取dd/mm/yyyy
并根据正确的格式显示正确的结果?在SQL Server 2008中实现此功能的最佳方法是什么?
SELECT int_ExchangeRateId, int_LocationId, dtm_Date
FROM ExchangeRate
WHERE dtm_Date >= '01/02/2006' AND dtm_Date <= '12/02/2006' AND int_LocationId = 98
这项工作正确:
SELECT int_ExchangeRateId, int_LocationId,dtm_Date
FROM ExchangeRate
WHERE CAST(dtm_Date AS DATE) BETWEEN '2006-02-02' AND '2006-02-12'
AND int_LocationId=98
答案 0 :(得分:5)
对于查询,我会使用YYYY-MM-DD
格式的日期。至于输出,请参阅kalyan的答案。
编辑:总结下面的评论(感谢marc_s),当时间部分未包含时,必须使用格式YYYYMMDD
,除非你在SQL Server 2008中使用新的日期类型date
,datetime2
和datetimeoffset
。
答案 1 :(得分:2)
为此,请参阅DateTime Formating,通过提供某些参数,我们可以将日期格式化为所需的格式。