如何将 update/Change 日期格式从 sql 服务器中的 dd/MM/yyyy 格式转换为 MM/dd/yyyy?
How to update/Change the date format to MM/dd/yyyy from dd/MM/yyyy format in sql server?
在我的数据库中,DOB 以 dd/mm/yyyy 格式保存。我想将 DOB 日期格式更改为 MM/dd/yyyy。我该怎么做?
CONVERT() 函数是将一种数据类型的表达式转换为另一种数据类型的通用函数。
CONVERT() 函数可用于以不同格式显示 date/time 数据。
首先我想知道您使用哪种数据类型来保存您的日期值。您的代码没有提供任何示例代码,table 没有任何详细信息。反正
我认为您的 'date of birth' 字段数据类型是日期时间,那么您可以使用以下示例
create table checktable(
ID int,
name nvarchar (30),
dob datetime);
Example data insert into the table
insert into checktable(ID,name,dob) values(10,'myname','03/01/2014');
//.......
select * from checktable
//Use CONVERT() it will give you the desired output
SELECT TOP 1 ID, dob,CONVERT(varchar,dob,101) 'mm/dd/yyyy'
FROM checktable
更新
如果您的数据类型是 varchar,现在它的格式是 mm/dd/yyyy,而您想将其更改为 dd/mm/yyyy 格式,那么使用下面的示例,它将帮助您
create table checktable1(
ID int,
name nvarchar (30),
dob varchar(20));
// insert sample data
insert into checktable1(ID,name,dob) values(10,'myname','21/05/2010');
select * from checktable1
// change the format using substring()
select * FROM checktable1
select dob,substring(dob,4,3)+substring(dob, 1, 3)+substring(dob, 7, 4) from checktable1
It will give you result in 05/21/2010 (mm/dd/yyyy)format
微软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]
对于其他数据库,请在文档中搜索 日期和时间函数。
如果你的数据类型是DateTime
那么就不需要转换它,以后你可以根据需要转换它的格式但是如果你使用的是varchar
或nvarchar
那么你可以使用 CONVERT()
如下
SELECT convert(datetime, '23/10/2016', 103)
Result : 2016-10-23 00:00:00.000
如果只是想谈约会的话
SELECT convert(date, '23/10/2016', 103)
Result : 2016-10-23
更多信息和其他格式
http://www.sqlusa.com/bestpractices/datetimeconversion/
如果您只想将字符串转换为字符串,那么
SELECT CONVERT(varchar,'23/10/2016',101)
Result : 23/10/2016
这是显示 dd/mm/yyyy 中所有数据的查询 format.Type 你的列名包含日期而不是 datecolumnname 和你的 table 名称而不是 table以下查询中的名称:
select convert(varchar,datecolumname,103) as datecolumname from tablename
在我的数据库中,DOB 以 dd/mm/yyyy 格式保存。我想将 DOB 日期格式更改为 MM/dd/yyyy。我该怎么做?
CONVERT() 函数是将一种数据类型的表达式转换为另一种数据类型的通用函数。
CONVERT() 函数可用于以不同格式显示 date/time 数据。
首先我想知道您使用哪种数据类型来保存您的日期值。您的代码没有提供任何示例代码,table 没有任何详细信息。反正 我认为您的 'date of birth' 字段数据类型是日期时间,那么您可以使用以下示例
create table checktable(
ID int,
name nvarchar (30),
dob datetime);
Example data insert into the table
insert into checktable(ID,name,dob) values(10,'myname','03/01/2014');
//.......
select * from checktable
//Use CONVERT() it will give you the desired output
SELECT TOP 1 ID, dob,CONVERT(varchar,dob,101) 'mm/dd/yyyy'
FROM checktable
更新
如果您的数据类型是 varchar,现在它的格式是 mm/dd/yyyy,而您想将其更改为 dd/mm/yyyy 格式,那么使用下面的示例,它将帮助您
create table checktable1(
ID int,
name nvarchar (30),
dob varchar(20));
// insert sample data
insert into checktable1(ID,name,dob) values(10,'myname','21/05/2010');
select * from checktable1
// change the format using substring()
select * FROM checktable1
select dob,substring(dob,4,3)+substring(dob, 1, 3)+substring(dob, 7, 4) from checktable1
It will give you result in 05/21/2010 (mm/dd/yyyy)format
微软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]
对于其他数据库,请在文档中搜索 日期和时间函数。
如果你的数据类型是DateTime
那么就不需要转换它,以后你可以根据需要转换它的格式但是如果你使用的是varchar
或nvarchar
那么你可以使用 CONVERT()
如下
SELECT convert(datetime, '23/10/2016', 103)
Result : 2016-10-23 00:00:00.000
如果只是想谈约会的话
SELECT convert(date, '23/10/2016', 103)
Result : 2016-10-23
更多信息和其他格式
http://www.sqlusa.com/bestpractices/datetimeconversion/
如果您只想将字符串转换为字符串,那么
SELECT CONVERT(varchar,'23/10/2016',101)
Result : 23/10/2016
这是显示 dd/mm/yyyy 中所有数据的查询 format.Type 你的列名包含日期而不是 datecolumnname 和你的 table 名称而不是 table以下查询中的名称:
select convert(varchar,datecolumname,103) as datecolumname from tablename