sql-server - SQL Server : convert ((int)year,(int)月,(int)日)到日期时间

标签 sql-server datetime

Possible Duplicate:
Create a date with T-SQL

我有一个数据表,将每年、月份和日期的值存储为整数:

year | month | day
2009 |   1   |  1 
2008 |  12   |  2
2007 |   5   |  5

我需要将其转换为日期时间值,因为我需要在日期时间操作之间使用它。我怎样才能做到这一点?

最佳答案

为了独立于语言和区域设置,您应该使用 ISO 8601 YYYYMMDD 格式 - 这将适用于具有任何有效语言和区域设置的任何 SQL Server 系统:

SELECT
   CAST(
      CAST(year AS VARCHAR(4)) +
      RIGHT('0' + CAST(month AS VARCHAR(2)), 2) +
      RIGHT('0' + CAST(day AS VARCHAR(2)), 2) 
   AS DATETIME)

关于sql-server - SQL Server : convert ((int)year,(int)月,(int)日)到日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1923876/

相关文章:

SQL Server - 添加或减去先前的值

sql-server - 当我有 "IsDeleted"列类型的日期时间列时,是否需要 bool 列?

flutter - 仅在 Flutter 中按日期比较 DateTime 对象

r - 确定哪个id的时间点早于R中的另一个时间点

c# - 如何找到下一个 2 :00 am in . 网的确切日期

c# - 尝试连接到 .sdf 数据库时出现异常

mysql - 将mysql数据从wamp环境转移到centOS

mysql - 我想将此查询从 mssql 转换为 mysql

c# - 从某个日期 Android DatePicker 的几个月后禁用所有日期

python - 如何处理重复事件中的 DST 和 TZ?