我需要连接固定字符串,整数变量和序列。我不知道如何在SQL Server 2012中执行此操作。我已经能够在PostgreSQL中实现相同的功能,但是任何人都可以帮助我在SQL Server中执行相同操作。
我试过这段代码:
FORMAT((NEXT VALUE FOR dtr_seq),('DTR'++@lc_org_unit_id));
但是它给出了错误说: 消息8116,级别16,状态1,过程sp_dtr,第27行 参数数据类型int对于格式函数的参数2无效。
我在PostgreSQL中使用的代码是这样的:
SELECT ('DTR'||lc_org_unit_id||nextval('ccdb.dtr_seq');
我期待的结果是这样的:
DTR46361002
请建议我如何在SQL Server 2012中实现相同的功能
答案 0 :(得分:2)
SELECT 'DTR' + CAST((NEXT VALUE FOR dtr_seq) AS VARCHAR(20))
+ CAST(@lc_org_unit_id AS VARCHAR(20))
答案 1 :(得分:1)
这是2012年的功能。选择CONCAT(' DTR',lc_org_unit_id,nextval(' ccdb.dtr_seq'))。 MSSQL 2012将在大多数时间处理从char到int的转换。