在我的数据库DOB以dd/mm/yyyy格式保存。我想将DOB日期格式更改为MM/dd/yyyy。我怎样才能做到这一点?如何在sql server中将日期格式从dd/MM/yyyy格式更新为MM/dd/yyyy?
0
A
回答
2
首先我想知道哪些数据类型,使用的是用于保存日期值。没有任何东西提供给你的代码没有示例代码,表格细节没有。反正 我想你“出生日期”字段的数据类型为datetime,那么你可以用下面的例子
create table checktable(
ID int,
name nvarchar (30),
dob datetime);
示例数据插入到表
insert into checktable(ID,name,dob) values(10,'myname','03/01/2014');
// .. ........
select * from checktable
//使用convert(),它会给你所需的输出
SELECT TOP 1 ID, dob,CONVERT(varchar,dob,101) 'mm/dd/yyyy'
FROM checktable
UPDATE
,如果你的数据类型为varchar,而现在则是在格式mm/dd/yyyy的,你想它换成DD/MM/yyyy格式然后使用下面的示例将帮助你
create table checktable1(
ID int,
name nvarchar (30),
dob varchar(20));
//插入样本数据
insert into checktable1(ID,name,dob) values(10,'myname','21/05/2010');
select * from checktable1
//更改使用格式串()
select * FROM checktable1
select dob,substring(dob,4,3)+substring(dob, 1, 3)+substring(dob, 7, 4) from checktable1
它会给你导致2010年5月21日(毫米/日/年)格式
0
CONVERT()函数是将一种数据类型的表达式转换为另一种数据类型的通用函数。
CONVERT()函数可用于以不同格式显示日期/时间数据。
1
Microsoft SQL:https://msdn.microsoft.com/en-us/library/ms187928.aspx
语法CONVERT:
CONVERT (data_type [ (length) ] , expression [ , style ])
使用例如:
SELECT CONVERT(VARCHAR(10), GETDATE(), 101) AS [MM/DD/YYYY]
对于文档的其他数据库搜索日期和时间函数。
0
如果你的数据类型为DateTime
则无需转换吧,以后你可以把它的格式,只要你想,但如果你正在使用varchar
或nvarchar
那么你可以使用CONVERT()
如下
SELECT convert(datetime, '23/10/2016', 103)
结果:2016年10月23日00:00:00.000
如果只是想在日期CONVER然后
SELECT convert(date, '23/10/2016', 103)
结果:2016年10月23日
更多的信息和其他格式
http://www.sqlusa.com/bestpractices/datetimeconversion/
,如果你只是想将字符串转换为刺痛,然后
SELECT CONVERT(varchar,'23/10/2016',101)
结果:2016年10月23日
你有什么数据类型? 'DateTime',还是真的是这种格式的'varchar'? – Mureinik 2015-02-23 07:13:55
数据库中字段的类型是什么?它应该是'DATE',这意味着它不是以任何文本格式存储的。您应该区分何时需要文字和何时需要真实价值。理想情况下,您只需在绝对需要时使用文本表示法,例如当你将它们展示给客户时。 – 2015-02-23 07:14:13
这是'dd/mm/yyyy'错字是因为'mm'是几分钟吗? – 2015-02-23 07:16:56