【问题标题】:How to concat time with present date in MS SQL while converting from MySQL?从 MySQL 转换时,如何在 MS SQL 中将时间与当前日期连接起来?
【发布时间】:2016-05-18 00:58:51
【问题描述】:

这里是Mysql代码:

select concat(date_format(now(),'%Y/%m/%d'),' ','06:00:00 AM')

尝试将日期与时间连接,出现错误,例如:需要两个参数来连接。

MS SQL:

select concat((CONVERT(varchar,getdate(),102),' ','06:00:00 AM')); *not working while converting from mysql to sql*

【问题讨论】:

  • 括号有问题。应该是:select concat((CONVERT(varchar,getdate(),102)),' ','06:00:00 AM');
  • 您已经标记了 SQL Server 2008 和 2012。问题是 2012 年的解决方案在 2008 年并不总是有效。Concat 就是一个很好的例子。您不能在 2008 年使用它。我建议您使用其中一个吗,这将增加发布的答案对您有用的几率。

标签: mysql sql sql-server sql-server-2008 sql-server-2012


【解决方案1】:

试试这个...

Select CONCAT( CONVERT(varchar,getdate(),102),' 06:00:00 AM') 

Or 
select CONVERT(varchar,getdate(),102) + ' 06:00:00 AM'

【讨论】:

    【解决方案2】:

    括号有问题。应该是:

    select concat((CONVERT(varchar,getdate(),102)),' ','06:00:00 AM');
    

    【讨论】:

      【解决方案3】:

      concat 在SQL Server 中无法识别。这段代码应该可以工作 -

      select CONVERT(varchar,getdate(),102)+' '+'06:00:00 AM';
      

      【讨论】:

      • CONCAT 自 SQL2012 起可用。
      • 谢谢。我仍在使用 2008 R2。
      猜你喜欢
      • 2018-04-27
      • 1970-01-01
      • 2020-06-11
      • 1970-01-01
      • 2016-12-19
      • 2023-02-03
      • 2012-08-14
      • 2011-11-11
      • 1970-01-01
      相关资源
      最近更新 更多