为什么SQL里面的日期型会自动加上00:00:000,如何去掉这几个0,我输入1982。01。20它会加上00:00:000,如何才能让它不加上那些0;

cokom 2002-09-10 11:56:03
为什么SQL里面的日期型会自动加上00:00:000,如何去掉这几个0,我输入1982。01。20它会加上00:00:000,如何才能让它不加上那些0;
...全文
1753 19 打赏 收藏 转发到动态 举报
写回复
用AI写文章
19 条回复
切换为时间正序
请发表友善的回复…
发表回复
myok 2002-09-10
  • 打赏
  • 举报
回复
Select Convert(Char(10),a,102) From Table2 即可。
comicgirl 2002-09-10
  • 打赏
  • 举报
回复
convert(char(10),a,120)
iamltd 2002-09-10
  • 打赏
  • 举报
回复
用CAST转换以后的格式收到你的SQL设置的语言环境的限制

要年份在前得另外想办法,再把字符串处理一下吧
cokom 2002-09-10
  • 打赏
  • 举报
回复
select cast(a as char(10)) from table2
这样可以转换
但是变成了这样
比如1982。01。20
成了01 20 1982
有没有什么属性让它的年份在前
comicgirl 2002-09-10
  • 打赏
  • 举报
回复
在表里有这些0有什么不好的?
查询时用DATEPART转一下0就没有了,
要不你用CHAR型吧
ji_hui 2002-09-10
  • 打赏
  • 举报
回复
日期型其实是日期时间型,当然会显示00:00:000,后面的是时间。
可以格式化输出,将日期型转化为字符串型。用CAST或CONVERT。
cokom 2002-09-10
  • 打赏
  • 举报
回复
firebing(初学者)
你试过吗
我有试过也不行
0变成了00:00:00
firebing 2002-09-10
  • 打赏
  • 举报
回复
SMALLDATETIME不会出现那个的。
comicgirl 2002-09-10
  • 打赏
  • 举报
回复
你试试SMALLDATETIME
duckcn 2002-09-10
  • 打赏
  • 举报
回复
如果你用datetime类型,可能不行。
cokom 2002-09-10
  • 打赏
  • 举报
回复
我是想打印报表才不想让它出现的
但有没有办法让它不会加上0呢
就是它存在表里也是没有0的
cokom 2002-09-10
  • 打赏
  • 举报
回复
我是要打印报表才想这样做的
日期显示时后面就有0了
这样打出来很难看
leimin 2002-09-10
  • 打赏
  • 举报
回复
转换成VARCHER(20)
你要去掉00:00:000的目的???
comicgirl 2002-09-10
  • 打赏
  • 举报
回复
char(10)的时候用120还行,VARCHAR(20)就不对了
102,111都可以
wealth 2002-09-10
  • 打赏
  • 举报
回复
后面那个120是什么意思?还有其他可用吗?
cokom 2002-09-10
  • 打赏
  • 举报
回复
解决了
分数不多
因为我的分数只有那么多了
结贴了
leimin 2002-09-10
  • 打赏
  • 举报
回复
to:cokom(海飞)
select convert(varchar(10),getdate(),120)
Result:
2002-09-10

select replace(convert(varchar(10),getdate(),120),'-','.')
Result:
2002.09.10
sunmingdong 2002-09-10
  • 打赏
  • 举报
回复
让它在那有什么不好,你取用的时候,不要它就好了

如:
select convert(char(10),getdate(),120) --显示结果为:2002-09-10

你还可以去掉日期:
select convert(char(7),getdate(),120) --显示结果为:2002-09

等等
comicgirl 2002-09-10
  • 打赏
  • 举报
回复
不好意思,打错了
参数是102

34,876

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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