Asp.net 仅从“获取日期”;日期“;类型列
我想从“日期”类型列中选择值。我有类似2019年4月29日的值,但当我选择它并在视图中打印时,我得到2019年4月29日00:00:00 我的问题是:Asp.net 仅从“获取日期”;日期“;类型列,asp.net,sql-server,Asp.net,Sql Server,我想从“日期”类型列中选择值。我有类似2019年4月29日的值,但当我选择它并在视图中打印时,我得到2019年4月29日00:00:00 我的问题是: 从项目中选择Id、项目名称、开始日期、结束日期、团队Id使用Convert函数将日期时间转换为日期 SELECT Id, project_name, convert(date,start_date) start_date, convert(date, end_date)end_date, Team_Id FROM Projects; 如果您想要
从项目中选择Id、项目名称、开始日期、结束日期、团队Id代码>使用Convert
函数将日期时间转换为日期
SELECT Id, project_name, convert(date,start_date) start_date, convert(date, end_date)end_date, Team_Id FROM Projects;
如果您想要DD.MM.YYYY
格式,请使用CONVERT(varchar(10),Getdate(),104)
所有sql格式如果您也得到时间,那么您的列开始日期
和结束日期
不是日期
数据类型。似乎它们是smalldatetime
或datetime2(0)
。事实上,如果您使用的是
,而不是-
,那么您可能正在使用(n)varchar
来存储值,如果是这样,您需要修复,varchar
不是存储日期的正确数据类型。使用日期(时间)数据类型。使用varchar
只会导致问题,而不会解决任何问题。列代码:`[start\u date]date NOT NULL,`因为您提到了asp.net
:在.net中没有date
类型,只有DateTime
。因此,当您从.NET应用程序的数据库中获取值时,它们将转换为DateTime
;你必须在你的应用程序中格式化它们。日期没有时间部分,@SebastianSiedlarz。这听起来像是您的显示层问题,而不是SQL Server。您好!请在解决方案中添加一个解释,因为通常不鼓励仅使用代码的答案。谢谢--来自评论。
SELECT Id, project_name, CONVERT(varchar(10), start_date, 104) as start_date,
CONVERT(varchar(10), end_date, 104) as end_date, Team_Id FROM Projects;
SELECT Id, project_name,
convert(date,start_date) as start_date,
convert(date,end_date) as end_date,
Team_Id FROM Projects