怎么把日期转换成字符串

theoffspring 2010-05-03 04:41:09
想把一个参数(字符串)转换成日期型,怎么转?是一个存储过程的参数,因为我要在查询分析器里写个测试,不知怎么转才能正确传上去。日期为2010-04-26
...全文
478 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
theoffspring 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 csw200201 的回复:]
YYYY-MM-DD or YYYYMMDD is ANSI standard for representing date. You should not get any error message when using this format.
[/Quote]
Thanks. It works.
天下在我心 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 htl258 的回复:]
SQL code
--字符串转日期(符合日期格式标准的前提下):
cast(col as datetime)
--或者
convert(datetime,col)
--日期转字符串:
在sql里用字符函数convert
SELECT CONVERT(varchar(100), GETDATE(), 0)-- 05 03 2010 10:57AM
SELECT CONVERT(var……
[/Quote]
厉害 ,学习了
lovezx1028 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 htl258 的回复:]

SQL code
--字符串转日期(符合日期格式标准的前提下):
cast(col as datetime)
--或者
convert(datetime,col)
--日期转字符串:
在sql里用字符函数convert
SELECT CONVERT(varchar(100), GETDATE(), 0)-- 05 03 2010 10:57AM
SELECT CONVERT(varchar(1……
[/Quote] 不错 。。。顶一个 。。
  • 打赏
  • 举报
回复
把你的语句贴出来。
csw200201 2010-05-03
  • 打赏
  • 举报
回复
YYYY-MM-DD or YYYYMMDD is ANSI standard for representing date. You should not get any error message when using this format.
theoffspring 2010-05-03
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 happycell188 的回复:]
SQL code
直接传就可以啦

if object_id('test.dbo.proc_test') is not null drop proc proc_test
go
create proc proc_test
@time datetime
as
begin
select a=@time
end
go
exec proc_test '2010-04-26'
/*
……
[/Quote]

你这种直接赋字符串的办法是否和系统默认日期格式有关啊,我系统是vista英文版的,能认出来吗?用convert我试过,总是说有语法错误,和你们写法一样。
喜-喜 2010-05-03
  • 打赏
  • 举报
回复
直接传就可以啦

if object_id('test.dbo.proc_test') is not null drop proc proc_test
go
create proc proc_test
@time datetime
as
begin
select a=@time
end
go
exec proc_test '2010-04-26'
/*
a
------------------------
2010-04-26 00:00:00.000
*/
bancxc 2010-05-03
  • 打赏
  • 举报
回复
up[Quote=引用 2 楼 htl258 的回复:]
SQL code
--字符串转日期(符合日期格式标准的前提下):
cast(col as datetime)
--或者
convert(datetime,col)
--日期转字符串:
在sql里用字符函数convert
SELECT CONVERT(varchar(100), GETDATE(), 0)-- 05 03 2010 10:57AM
SELECT CONVERT(var……
[/Quote]
htl258_Tony 2010-05-03
  • 打赏
  • 举报
回复
--字符串转日期(符合日期格式标准的前提下):
cast(col as datetime)
--或者
convert(datetime,col)
--日期转字符串:
在sql里用字符函数convert
SELECT CONVERT(varchar(100), GETDATE(), 0)-- 05 03 2010 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 1)-- 05/03/10
SELECT CONVERT(varchar(100), GETDATE(), 2)-- 10.05.03
SELECT CONVERT(varchar(100), GETDATE(), 3)-- 03/05/10
SELECT CONVERT(varchar(100), GETDATE(), 4)-- 03.05.10
SELECT CONVERT(varchar(100), GETDATE(), 5)-- 03-05-10
SELECT CONVERT(varchar(100), GETDATE(), 6)-- 03 05 10
SELECT CONVERT(varchar(100), GETDATE(), 7)-- 05 03, 10
SELECT CONVERT(varchar(100), GETDATE(), 8)-- 10:57:46
SELECT CONVERT(varchar(100), GETDATE(), 9)-- 05 03 2010 10:57:46:827AM
SELECT CONVERT(varchar(100), GETDATE(), 10)-- 05-03-10
SELECT CONVERT(varchar(100), GETDATE(), 11)-- 10/05/03
SELECT CONVERT(varchar(100), GETDATE(), 12)-- 100503
SELECT CONVERT(varchar(100), GETDATE(), 13)-- 03 05 2010 10:57:46:937
SELECT CONVERT(varchar(100), GETDATE(), 14)-- 10:57:46:967
SELECT CONVERT(varchar(100), GETDATE(), 20)-- 2010-05-03 10:57:47
SELECT CONVERT(varchar(100), GETDATE(), 21)-- 2010-05-03 10:57:47.157
SELECT CONVERT(varchar(100), GETDATE(), 22)-- 05/03/10 10:57:47 AM
SELECT CONVERT(varchar(100), GETDATE(), 23)-- 2010-05-03
SELECT CONVERT(varchar(100), GETDATE(), 24)-- 10:57:47
SELECT CONVERT(varchar(100), GETDATE(), 25)-- 2010-05-03 10:57:47.250
SELECT CONVERT(varchar(100), GETDATE(), 100)-- 05 03 2010 10:57AM
SELECT CONVERT(varchar(100), GETDATE(), 101)-- 05/03/2010
SELECT CONVERT(varchar(100), GETDATE(), 102)-- 2010.05.03
SELECT CONVERT(varchar(100), GETDATE(), 103)-- 03/05/2010
SELECT CONVERT(varchar(100), GETDATE(), 104)-- 03.05.2010
SELECT CONVERT(varchar(100), GETDATE(), 105)-- 03-05-2010
SELECT CONVERT(varchar(100), GETDATE(), 106)-- 03 05 2010
SELECT CONVERT(varchar(100), GETDATE(), 107)-- 05 03, 2010
SELECT CONVERT(varchar(100), GETDATE(), 108)-- 10:57:49
SELECT CONVERT(varchar(100), GETDATE(), 109)-- 05 03 2010 10:57:49:437AM
SELECT CONVERT(varchar(100), GETDATE(), 110)-- 05-03-2010
SELECT CONVERT(varchar(100), GETDATE(), 111)-- 2010/05/03
SELECT CONVERT(varchar(100), GETDATE(), 112)-- 20100503
SELECT CONVERT(varchar(100), GETDATE(), 113)-- 03 05 2010 10:57:49:513
SELECT CONVERT(varchar(100), GETDATE(), 114)-- 10:57:49:547
SELECT CONVERT(varchar(100), GETDATE(), 120)-- 2010-05-03 10:57:49
SELECT CONVERT(varchar(100), GETDATE(), 121)-- 2010-05-03 10:57:49.700
SELECT CONVERT(varchar(100), GETDATE(), 126)-- 2010-05-03T10:57:49.827
SELECT CONVERT(varchar(100), GETDATE(), 130)-- 18 ???? ?????? 1427 10:57:49:907AM
SELECT CONVERT(varchar(100), GETDATE(), 131)-- 18/04/1427 10:57:49:920AM
csw200201 2010-05-03
  • 打赏
  • 举报
回复
'2010-04-26' will convert successfully to a datetime type via implicit conversion.

Alternatively, if you construct your string to be '20100426' it will convert successfully as well.

You can always force explicit conversion by calling Convert (transact-SQL only) or Cast (ANSI SQL 92 standard).

27,579

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server 应用实例
社区管理员
  • 应用实例社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧