sql数据库筛选出生日期,但是提示从 nvarchar 数据类型到 datetime 数据类型的转换产生一个超出范围的值

说明你的表 cdsgus 中的 bi( date )rthday 字段的值中有不是正常日期格式的数据,如:1980/01, 1980.01, 是将数据整成日期格式,想偷懒那就写脚本时处理,

sql日期格式转换_sql日期格式转换为字符串sql日期格式转换_sql日期格式转换为字符串


sql日期格式转换_sql日期格式转换为字符串


1 先看是否为日期格式,如果是,直接用 birthday 比较

2 如果不是日期格式,看看长度

3 根据长度具体处理, 如:长 7 位,后面加个天数...

如:

SELECT FROM cdsgus

WHERE CASE ISDATE(birthday) WHEN 1 THEN birthday ELSE CASE LEN(birthday) to_date是oracle中的写法,sql rq = ‘日期’WHEN 7 THEN replace(birthday, '.', '/') + '/01' ELSE '1901/01/01' END END >'1980/01/01'

sql中 如何将201610转换为2016-10 即把6位数字转换为日期格式

你这也不叫日期格式,完整的日期格式是带年月日,或者年月日时分秒的查下帮助就行了,你这顶多算年份和月份之间加注意事项:个横线

看具体什么数据库了,mysql如下:

select concat(substring(字段名,1,4),'-',substring(字段名,5,2)) from 表名sqlserver如下:

select substring(字段名,1,4)+'-'+substring(字段名,5,2) from 表名oracle如下:

select substr(字段名,1,4)||'-'||substr(字段名,5,2) from 表名

sql 文本转日期

结果为

给你个简单的例子吧,,,

CREATE TABLE test(date TEXT)

)ALTER TABLE test ALTER COLUMN date VARCHAR(255)

UPDATE test SET date=REPLACE(date,'/','-') ALTER TABLE test ALTER COLUMN date DATETIME

--SELECT FROM test结果:

2013-09-20 00:00:00.000

你是想把查询出来的数据改成time格式显示 还是说把临时表中的字段改成 datetime 类型? 如果是种的话 试7 107 - mon dd, yy试这个

SELECT CONVERT(NVARCHAR(10),date,21) FROM #date

cast(这个字段 as date)

or convert(varchar(10),这个字段,120)

or repleace(这个字段,'/'.'-')

SQL 日期格式转换

SELECT 14 AS ID , Convert(VARCHAR(30), GETDATE(), 14 ) AS result UNION ALL

你只要在输入表格的时候规定输入的日期控件值为"short

date"格式即可。你输入的日期值将为

年、月、日,而没有具体的时间了。格式为:

format(text1.text,"short

date")

或者

format(dtpicker1.value,"short

date")

给你个代码,你可以看看结果的不同。

Dim

As

Date

=Now

MsgBox

MsgBox

Format(da,

"short

date")

select

'+substring('20090826132252',9,2)+':'+substring('20090826132252',11,2)+':'+substring('20090826132252',13,2)

以上转换后为varchar类型的

select

cast(substring('20090826132252',1,4)+'-'+substring('20090826132252',5,2)+'-'+substring('20090826132252',7,2)+'

'+substring('20090826132252',9,2)+':'+substring('20090826132252',11,2)+':'+substring('20090826132252',13,2)+'.000'

as

datetime)

以上转换后为datetime类型的

以上,希望对你有所帮助!

select to_date(20090826132252,'yyyy-mm-dd hh24:mi:ss') from dual;

update

[表DATE_FORMAT(d,f) 按表达式f的要求显示日期d名]

set

[字段名]=convert(datetime,convert(char(20),[字段名],102))

sql字符串转日期

5 105 意大利 dd-mm-yy

--给你两个转日期的格式 实际中后面那个用的还多一点 虽然写法复杂点

select CAST(列A as datetime) 列A

from (select 列A,ISDATE(列A) bz from tableA ) aa where aa.bz=1

from (select 列A,ISDATE(列A) bz from tableA ) aa where aa.bz=1

sql字符串转日期

而您这个格式是日月年的格式,使用105

SELECT convert(datetime,'30-03-2011',105)

可能是你的数据库里面, 某些数据 不是有效的日期。

你尝试执行一下

SELECT A FROM 表

WHERE

ISDATE( A ) = da 0;

该语句将返回那些 认为不是日期的数据。

你列A里面的有转不了日期的,例如2013-3-50,因为日期里面没有这一天,所以会提示转换失败,把这些数据去掉或者改下就可以了

select cast(列A as datetime) from tableA

SQL语句中, 怎样把日期转为字符串?

Select CONVERT(varchar(100), GETDATE(), 108 -- 10:57:49

这个问题我已经回答了,楼主是mysql数据库.

select

concat(year(now()),month(now()));

convert(varchar(8),getdate(),110)

你的数据库是什么啊

!oracel

还是

sSelect CONVERT(varchar(100), GETDATE(), 13 -- 16 05 2006 10:57:46:937qlserver

还是

mysql

这条sql

是sqlserver的

convert ()

cast()

SQL ——如何指定日期格式

需要得到yyyymm,应该是.

1、打开sql server的管理工具,点击新建查询,如下图所示。

2、然后输入select getdate(),如下图所示。

3、结果会显示年月日时分秒的格式,如下图所示。

4、然后执行converSELECT CONVERT(varchar(100), GETDATE(), 1): 05/28/15t函数,将起转换为121格式,如下图所示。

5、接着就可以看到结果只显示了日期部分,如下图所示。

6、经常使用的话可以抽成函数,如下图所示。

1.请写出将 Sql 的系统日期转换成格式为'yyyy-mm-dd'字符串的表达式

set 日期字段=STUFF(convert(varchar(26),日期字段,120),1,4,'要修改成哪一年')

1). left(convert(varchar,getdate(),120),10) --转换成yyyy-mm-dd

2).时间:SELECT 3 AS ID , Convert(VARCHAR(30), GETDATE(), 3 ) AS result UNION ALLdatediff(day,'2004-03-22','2005-05-05')

如何在SQL查询中设置时间格式

120或者121的格式是YYYY-MM-DD

--注意,将里面的 GETDATE() 代换成你要转化的日期变量。

INSERT INTO dbo.test

--常用的

Select CONVERT(varchar(100), GETDATE(), 120) -- 2006-05-16 10:57:49

Select CONVERT(varchar(100), GETDATE(), 121) -- 2006-05-16 10:57:49.700

Select CONVERT(varchar(100), GETDATE(), 114 -- 10:57:49:547

--其它日期格式化式样

--日期格式化函数

Select CONVERT(varchar(100), GETDATE(), 0 -- 05 16 2006 10:57AM

Select CONVERT(varchar(100), GETDATE(), 1 -- 05/16/06

Select CONVERT(varchar(100), GETDATE(), 2 -- 06.05.16

Select CONVERT(varchar(100), GETDATE(), 3 -- 16/05/06

Select CONVERT(varchar(100), GETDATE(), 4 -- 16.05.06

Select CONVERT(varchar(100), GETDATE(), 5 -- 16-05-06

Select CONVERT(varchar(100), GETDATE(), 6 -- 16 05 06

Select CONVERT(varchar(100), GETDATE(), 7 -- 05 16, 06

Select CONVERT(varchar(100), GETDATE(), 8 -- 10:57:46

Select CONVERT(varchar(100), GETDATE(), 9 -- 05 16 2006 10:57:46:827AM

Select CONVERT(varchar(100), GETDATE(), 10 -- 05-16-06

Select CONVERT(varchar(100), GETDATE(), 11 -- 06/05/16

Select CONVERT(varchar(100), GETDATE(), 12 -- 060516

Select CONVERT(varchar(100), GETDATE(), 14 -- 10:57:46:967

Select CONVERT(varchar(100), GETDATE(), 20 -- 2006-05-16 10:57:47

Select CONVERT(varchar(100), GETDATE(), 21 -- 2006-05-16 10:57:47.157

Select CONVERT(varchar(100), GETDATE(), 22 -- 05/16/06 10:57:47 AM

Select CONVERT(varchar(100), GETDATE(), 23 -- 2006-05-16

Select CONVERT(varchar(100), GETDATE(), 24 -- 10:57:47

Select CONVERT(varchar(100), GETDATE(), 25 -- 2006-05-16 10:57:47.

Select CONVERT(varchar(100), GETDATE(), 100 -- 05 16 2006 10:57AM

Select CONVERT(varchar(100), GETDATE(), 101 -- 05/16/2006

Select CONVERT(varchar(100), GETDATE(), 103 -- 16/05/2006

Select CONVERT(varchar(100), GETDATE(), 105 -- 16-05-2006

Select CONVERT(varchar(100), GETDATE(), 106 -- 16 05 2006

Select CONVERT(varchar(100), GETDATE(), 107 -- 05 16, 2006

Select CONVERT(varchar(100), GETDATE(), 109 -- 05 16 2006 10:57:49:437AM

Select CONVERT(varchar(100), GETDATE(), 110 -- 05-16-2006

Select CONVERT(varchar(100), GETDATE(), 111 -- 2006/05/16

Select CONVERT(varchar(100), GETDATE(), 112 -- 20060516

Select CONVERT(varchar(100), GETDATE(), 113 -- 16 05 2006 10:57:49:513

Select CONVERT(varchar(100), GETDATE(), 114 -- 10:57:49:547

Select CONVERT(varchar(100), GETDATE(), 120 -- 2006-05-16 10:57:49

Select CONVERT(varchar(100), GETDATE(), 121 -- 2006-05-16 10:57:49.700

Select CONVERT(varchar(100), GETDATE(), 126 -- 2006-05-16T10:57:49.827

Select CONVERT(varchar(100), GETDATE(), 131 -- 18/04/1427 10:57:49:920AM

用CONVERT()函数转换