SQL字符串转日期

发布时间:2023-05-18

一、SQL字符串转日期比大小

在需要对SQL字符串进行日期比大小的场景下,需要先将字符串转成日期格式,再进行比较。例如:

SELECT * FROM table WHERE CONVERT(DATE, date_string, 120) > '2020-01-01';

以上代码将 date_string 转成日期格式,然后与指定日期 '2020-01-01' 进行比较。

二、字符串转日期格式SQL

在SQL语句中,可以使用 CONVERTCAST 函数将字符串转成日期格式。下面是一些常用的日期格式:

  • yyyy-mm-dd: 120
  • yyyymmdd: 112
  • yyyy-mm-dd hh:mi:ss.mmm: 121
  • yyyy-mm-ddThh:mi:ss.mmmZ: 127
    例如,以下代码将 date_string 转成 YYYY-MM-DD 格式的日期:
SELECT CONVERT(DATE, date_string, 120) FROM table;

三、SQL字符串转日期函数

除了使用 CONVERTCAST 函数,还可以使用SQL自带的一些日期函数将字符串转成日期格式。 例如,以下代码使用 DATEFROMPARTS 函数将年、月、日拼成日期:

SELECT DATEFROMPARTS(year, month, day) FROM table;

其他常用的日期函数还包括:DATEDIFFDATEADDYEARMONTHDAY 等。

四、SQL字符串转日期时间

如果需要将字符串转成日期时间格式,可以使用 CONVERT 函数,并指定日期时间格式代码:

SELECT CONVERT(DATETIME, date_string, 120) FROM table;

以上代码将 date_string 转成日期时间格式,格式代码为 120。

五、SQL字符串转日期格式YYYY-MM

有时候需要将SQL字符串转成 YYYY-MM 格式的日期,可以使用 LEFT 函数截取年月部分,并拼接起来:

SELECT LEFT(date_string, 7) FROM table;

以上代码将 date_string 字符串截取到年月部分,再返回 YYYY-MM 格式的日期字符串。

六、SQL字符串转换为日期

如果字符串的格式无法直接转成日期格式,可以先使用 REPLACE 函数将 '/' 替换成 '-',再使用 CONVERT 函数将其转成日期格式。

SELECT CONVERT(DATE, REPLACE(date_string, '/', '-'), 120) FROM table;

以上代码将 date_string 字符串中的 '/' 替换成 '-',再将其转成日期格式。

七、SQL字符串转日期格式YYYYMM

有时候需要将SQL字符串转成 YYYYMM 格式的日期,可以使用 LEFT 函数和 REPLACE 函数截取年月部分,并拼接起来:

SELECT LEFT(REPLACE(date_string, '/', ''), 6) FROM table;

以上代码将 date_string 字符串先将 '/' 替换为空,再截取到年月部分,再返回 YYYYMM 格式的日期字符串。

八、字符串转日期SQL

在SQL Server中,可以使用 CONVERT 函数将字符串转成日期格式。例如:

SELECT CONVERT(DATE, date_string, 120) FROM table;

九、SQL语句字符串转日期

在SQL中,可以使用 CAST 函数将字符串转成日期格式。例如:

SELECT CAST(date_string AS DATE) FROM table;

以上代码将 date_string 字符串转成日期格式。