2012-03-08 121 views
1

我已可以执行下面的脚本在SQL我怎样才能显示SQL字符串值的参数

Select Year as ' years between ' + @StartYear + '-' + @EndYear + ' value ' 
from tblYears 
where Year Between @StartYear and @EndYear 
+0

我相信'有'是错字...它应该是'如何'。不是吗?你能执行并看到你得到什么错误? – 2012-03-08 15:21:30

+0

应该是'[alias] = '或' AS [别名]'。不知道你在哪里得到你正在使用的'[别名] AS '语法。 – 2012-03-08 15:40:11

回答

3

你有你的as切换左右。这个名字来自最后

Select 'years between ' + @StartYear + '-' + @EndYear + ' value ' AS Year 
from tblYears 
where Year Between @StartYear and @EndYear 

现在@StartYear和@EndYear也有可能不是CHAR/VARCHAR/NCHAR/nvarchar的,所以你需要将它们转换。我将在这里假设你的年份是一个4位整数。如果不是,你需要调整它。

Select 'years between ' + convert(char(4), @StartYear) + '-' + convert(char(4), @EndYear) + ' value ' AS Year 
from tblYears 
where Year Between @StartYear and @EndYear 
0

我相信你想要的是这样的,你在哪里插入选定的行的值到最终的输出?

SELECT CONVERT(CHAR(4), Year) + ' year is between ' 
    + CONVERT((CHAR(4),@StartYear) +'-'+ CONVERT((CHAR(4),@EndYear) + ' values.' 
FROM tblYears 
WHERE Year BETWEEN @StartYear AND @EndYear 

否则,您甚至不需要FROM或WHERE,因为您将一遍又一遍地打印相同的东西。然后,我会建议:

SELECT ' years between ' + CONVERT((CHAR(4),@StartYear) + '-' 
    + CONVERT((CHAR(4),@EndYear) + ' value' 
相关问题