SQL Server创建日期

tsu*_*man 5 sql-server

我们可以使用SQL Server 2005创建日期吗?

例如,如果我有year = 2010,month = 11和day = 2,我如何将其转换或创建为datetime?

下面是我们用javascript写的

var date = new Date(2010, 10, 2, 0, 0, 0, 0);
Run Code Online (Sandbox Code Playgroud)

这是与oracle

SELECT TO_DATE('2010-11-02', 'YYYY-MM-DD') FROM DUAL
Run Code Online (Sandbox Code Playgroud)

谢谢

Dam*_*ver 3

如果您正在使用字符串,并且想要转换为日期时间数据类型,那么最好使用可以明确转换为日期时间的字符串。以下格式都可以通过 SQL 转换为日期时间值(通过 CONVERT,或让 SQL Server 隐式进行转换),而不会产生任何歧义:

'20101102'

'2010-11-02T10:59:59'

'2010-11-02T10:59:59.997'
Run Code Online (Sandbox Code Playgroud)

在所有上述格式中,日期部分均排列为 4 位数年份,然后是月份,然后是日期。其他看起来非常相似的格式(例如'2010-11-02')可能会转换为不同的值,具体取决于您连接的语言设置(但 Dogget 的答案仍然有效,因为他在 ODBC 文字表达式中使用它,该表达式定义良好 - 将其包围那些{d }角色)