有没有一种方法可以快速地将这个日期格式转换成sql中的日期?
{ “date_from”:”22112017”,”date_to”:”22112017”}
这是过滤这些日期之间的数据所必需的
(网上有很多转换条目,但我还没有找到这种格式)
编辑:
DECLARE @EndDate DATE = CONVERT(VARCHAR, '22112017', 103)
PRINT @EndDate
``` `Error: Conversion failed when converting date and/or time from character string.` 我所拥有的:
@StartDate = '22112017'
@EndDate = '22112020'
我需要做的是:
SELECT * from tblMy WHERE ReceivedDate BETWEEN @StartDate AND @EndDate
3条答案
按热度按时间093gszye1#
如果您将json修复为不使用样式化双引号(
”
)使用标准的("
)然后可以将其解析为json。一旦提取了值,就可以注入几个/
字符,然后转换为date
样式代码是103(dd/MM/yyyy
):编辑:
似乎op已经移动了他们的目标位置,这与json无关。
这里的问题是你的文字字符串。当对日期和时间数据类型使用文本字符串时,请使用
yyyyMMdd
或者yyyy-MM-ddThh:mm:ss.nnnnnnn
因为无论语言和数据类型如何,它们都是明确的:l7wslrjt2#
我建议将该值转换为标准的SQLServer日期值。这很简单:
标准日期格式为yyyymmdd。您的是ddmmyyyy,因此字符串操作可以将其转换为正确的格式。当然,您可能应该做的是将值转换为应用程序层中的日期,并将日期值作为参数传入。
kuuvgm7e3#
这将修复错误“错误:从字符串转换日期和/或时间时转换失败。”