Sql server SQLServerManagementStudio中的连接

Sql server SQLServerManagementStudio中的连接,sql-server,group-by,concat,Sql Server,Group By,Concat,我有一个表(l.loandeterminationscore),它返回一个由3(XXX)组成的结果。我使用下面的查询将该结果分为低范围和高范围,以便将返回的结果分组为一个结果“XXX-XXX” 上面返回的结果如下所示: LoanNumber FICO LowRange HighRange ----------------------------------- 592301428 604 600 619 220300002 640 640 659 414805244

我有一个表(
l.loandeterminationscore
),它返回一个由3(XXX)组成的结果。我使用下面的查询将该结果分为
低范围
高范围
,以便将返回的结果分组为一个结果“XXX-XXX”

上面返回的结果如下所示:

LoanNumber FICO LowRange HighRange
-----------------------------------
592301428  604  600      619
220300002  640  640      659
414805244  675  660      679
我正试图将上述
FICO
low-Range
high-Range
组合成一个20磅的范围。因此,简而言之,我希望它作为一列返回,显示范围为“600-619”、“640-659”、“660-679”,而不是为
低范围
高范围
设置两列

我尝试了
CONCAT
表达式,但我不断收到一个“语法”错误。

试试这个:

SELECT 
    l.LoanNumber,
    l.LoanDeterminationScore 'FICO', 
    CAST(FLOOR (l.LoanDeterminationScore / 20) * 20 AS VARCHAR(10)) + '-' +
    CAST(FLOOR (l.loanDeterminationScore / 20) * 20 + 19 AS VARCHAR(10)) AS 'Range' 
FROM 
    loan.LoanQA l
WHERE
    l.FundedDate = '10/15/2013'
只需
将数值转换为字符串类型,用
+
连接,就可以了

什么版本的SQL Server
CONCAT
是SQL Server 2012中的一个新命令
SELECT 
    l.LoanNumber,
    l.LoanDeterminationScore 'FICO', 
    CAST(FLOOR (l.LoanDeterminationScore / 20) * 20 AS VARCHAR(10)) + '-' +
    CAST(FLOOR (l.loanDeterminationScore / 20) * 20 + 19 AS VARCHAR(10)) AS 'Range' 
FROM 
    loan.LoanQA l
WHERE
    l.FundedDate = '10/15/2013'