之前,我在做统计数据时,需要一个字段显示某月的订单数量和订单金额,要求组合成一个字段,用括号组合。
统计出来的结果大概是这样的,首先我们来创建一些模拟数据
---创建订单表--- create table OmsOrder( Uid int identity(1,1) primary key, OrganizeName varchar(20) not null, OrderCount int not null, OrderMoney float not null ) --添加模拟数据--- insert into OmsOrder(OrganizeName,OrderCount,OrderMoney) values(\'同步诊所\',100,54231),(\'慈恩诊所\',56,12123),(\'龙华诊所\',87,35212)
统计后结果是这样的,但是我们是需要订单数量(订单金额)这样显示方式
组合语法用Cast()函数进行转换,语法如下
--组合语法--- select (Cast(字段名 as varchar(20)) +\'(\'+ Cast(字段名 as varchar(20))+\')\') from tableName
1、用括号实现两个字段组合成一个并显示
--1、用()将两个字段组合-- select a.OrganizeName, (CAST(OrderCount as varchar(20))+\'(\'+CAST(OrderMoney as varchar(20))+\'元)\') as OrderData from OmsOrder as a
组合后,返回的数据如下:
2、用 -- 号实现两个字段组合成一个字段
--2、用-- 将两个字段组合-- select a.OrganizeName, (CAST(OrderCount as varchar(20))+\'--\'+CAST(OrderMoney as varchar(20))+\'元\') as OrderData from OmsOrder as a
组合后,返回的数据如下:
Ps :
1)转换字段的数据类型无论是int、float、varchar等,都直接转换成varchar()类型
2)Cast()函数转换后用“+” 号连接, 用括号把整个当成一个整体,返回成一个字段