如果是不同字段但是同一类型的拼接可以直接用加号:
我们提供的服务有:成都网站设计、成都网站建设、外贸网站建设、微信公众号开发、网站优化、网站认证、湘桥ssl等。为上1000家企事业单位解决了网站和推广的问题。提供周到的售前咨询和贴心的售后服务,是有科学管理、有技术的湘桥网站制作公司
例如 表test里面有 A、B两个字段,
select A + B as C from test;
以sqlserver,oracle,mysql三种数据库为例,因为这三种数据库具有代表性。
sqlserver:
select '123'+'456';
oracle:
select '123'||'456' from dual;
或
select concat('123','456') from dual;
mysql:
select concat('123','456');
注意:oracle和mysql中虽然都有concat,但是oracle中只能拼接2个字符串,所以建议用||的方式;mysql中的concat则可以拼接多个字符串。
用临时表就可以了啊!
create TABLE #TEMP2
(XH INT IDENTITY(1,1),
XM VARCHAR(100)
)
INSERT INTO #TEMP2(XM)
SELECT 'A'
UNION ALL
SELECT 'B'
SELECT * FROM #TEMP2
DROP TABLE #TEMP2 --删除临时表
字符串要打引号的,数值型才不用打,最直接的方法是把你这些字符串换成具体的内容自己拼接一下检查,向你上面的string strsql="select * from jpsx_ddl where class= 城市"; 而城市是个字符串,所以要加单引号string strsql="select * from jpsx_ddl where class=' " + cls + " ' ";
以上回答你满意么?
SQL2005或以上才可以:
Declare
@t
Table
(
ID
int,
FName
varchar(20),
CName
varchar(20),
CAge
varchar(20)
)
Insert
Into
@t
select
1,'吴亮','吴1','3岁'
Union
select
1,'吴亮','吴2','5岁'
Union
select
1,'吴亮','吴3','9岁'
Union
select
4,'麦大伟','麦1','3岁'
Union
select
4,'麦大伟','麦2','5岁'
Union
select
6,'张思','张1','3岁'
下面是合并:
Select
ID,FName,CName=Stuff((Select
','+CName
From
@t
Where
ID=T.ID
For
xml
path('')),1,1,''),
CAge=Stuff((Select
','+CAge
From
@t
Where
ID=T.ID
For
xml
path('')),1,1,'')
From
@t
T
Group
by
id,FName