我正在开发一个使用SQL Server 2008 T-sql代码的动态SQL。所以我想返回看起来像“Jan'11”的值。如何添加单引号的动态SQL分隔符?
我的代码看起来是这样的:
left(datename(month, SGD_SIGNOFF_DATE), 3) + ' + '''' + ' RIGHT(year(SGD_SIGNOFF_DATE), 2) AS MonthYear
但是,这是行不通的。要么我得到输出看起来像“Jan11”或我得到错误消息。我的解决方案的正确语法是什么?
我正在开发一个使用SQL Server 2008 T-sql代码的动态SQL。所以我想返回看起来像“Jan'11”的值。如何添加单引号的动态SQL分隔符?
我的代码看起来是这样的:
left(datename(month, SGD_SIGNOFF_DATE), 3) + ' + '''' + ' RIGHT(year(SGD_SIGNOFF_DATE), 2) AS MonthYear
但是,这是行不通的。要么我得到输出看起来像“Jan11”或我得到错误消息。我的解决方案的正确语法是什么?
SELECT LEFT(datename(month, SGD_SIGNOFF_DATE), 3) + '''' + RIGHT(year(SGD_SIGNOFF_DATE), 2) AS MonthYear
这应该工作:
left(datename(month, SGD_SIGNOFF_DATE), 3) + '''' + RIGHT(year(SGD_SIGNOFF_DATE), 2) AS MonthYear
我知道了!这是现在的代码!
left(datename(month, SGD_SIGNOFF_DATE), 3) + '''''''' + RIGHT(year(SGD_SIGNOFF_DATE), 2) AS MonthYear
看来我知道你在做什么,以及为什么它的工作原理:) – 2011-06-14 17:47:16
你并不需要张贴的答案与正确答案。只需点击答案旁边的空白复选标记,将上面的答案标记为正确即可。请确保您阅读[常见问题] - 这是网站是问答网站,而不是论坛。 – codingbadger 2011-06-14 19:54:31