【问题标题】:Not able to merge two columns in SQL Server while printing打印时无法合并 SQL Server 中的两列
【发布时间】:2011-09-12 23:10:51
【问题描述】:
我想以所需格式打印表格的两列。我尝试了以下格式,但它给出了错误提示
转换数据类型 varchar 时出错
到 bigint。
这是我的查询:
Select ClassID + ' .' + ClassSectionID AS Class
from ClassSectionMaster
ORDER BY Class
谁能告诉我怎么做?
【问题讨论】:
标签:
asp.net
sql
sql-server
datagrid
concatenation
【解决方案1】:
SQL Server 不喜欢您尝试将 bigint (ClassID/ClassSectionID) 类型的列与字符串“.”组合在一起的事实。
我假设您希望输出格式为“9.6”,并且字符串是可以接受的。
您必须使用CAST or CONVERT 将数据类型更改为 VARCHAR(x) 才能进行这种组合。
SELECT CAST(ClassID AS VARCHAR(x)) + ' .' + CAST(ClassSectionID AS VARCHAR(y))
AS Class
FROM ClassSectionMaster ORDER BY Class
【解决方案2】:
Select (Convert(nvarchar(10), ClassID) + ' .' + Convert(nvarchar(10), ClassSectionID)) AS Class
from ClassSectionMaster
ORDER BY Class