Sql 如何将日期转换为格式为MM/YY或M/YY且无前导零的字符串
我需要将日期yyyy mm dd 00:00:00.000转换为mm/yy或m/yy 以下是样本:Sql 如何将日期转换为格式为MM/YY或M/YY且无前导零的字符串,sql,sql-server,tsql,Sql,Sql Server,Tsql,我需要将日期yyyy mm dd 00:00:00.000转换为mm/yy或m/yy 以下是样本: convert "**2016-01-01 00:00:00.000**" =====> "**1/16**" -- no leading zeros convert "**2016-08-25 00:00:00.000**" =====> "**8/16**" -- no leading zeros convert "**2016-10-11 00:00:00.000**" ==
convert "**2016-01-01 00:00:00.000**" =====> "**1/16**" -- no leading zeros
convert "**2016-08-25 00:00:00.000**" =====> "**8/16**" -- no leading zeros
convert "**2016-10-11 00:00:00.000**" =====> "**10/16**"
ANSI SQL中的通用方法是:
select concat(extract(month from datecol), '/', extract(year from datecol))
不同的数据库有不同的表达式日期提取函数和字符串连接方式,但您可以理解
说了这些,我不知道你为什么想要这种格式。我强烈建议所有人类可读的日期为YYYY-MM-DD。它不含糊,易于解析,并且分类正确。Gordon
我不知道怎么用你的公式。但我想出了下面的公式,并完成了这项工作
select convert(varchar,datepart(mm,GETDATE()))+'/'+right(year(GETDATE()),2)
谢谢您的帮助。请用RDBMS标记。从dual中选择“fmMM/YY”作为\u charsysdate;-@Gordon,尝试了你的代码,但无效。Msg 156,15级,状态1,第1行关键字“from”附近语法不正确。谢谢。@Allen_Delon。并非所有数据库都支持所有ANSI SQL函数。您需要用实际使用的数据库标记您的问题。