SQL 合并行,返回带分隔字符的字符串
--合并行,并返回合并的值
Create proc [dbo].[proUniteRow]
@tab varchar(30), --表名
@col varchar(30), --合并的列名
@where varchar(2000), --合并的条件
@firstSplit varchar(100), --连接字符前缀
@lastSplit varchar(100), --连接字符后缀
@order varchar(100), --排序
@val nvarchar(2000)='' output –返回值
as
begin
declare @sql nvarchar(2000)
set @sql='
declare @retStr varchar(2000)
set @retStr=''''
declare cur cursor
read_only
for select
'+@col+' from '+@tab
if len(@where)>0
set @sql=@sql+' where '+@where
if len(@order)>0
set @sql=@sql+' order by '+@order
set @sql=@sql+'
declare @str varchar(2000)
open cur
fetch next from cur into @str
while (@@fetch_status =0)
begin
set @retStr=@retStr+'''+@firstSplit+'''+@str+'''+@lastSplit+'''
fetch next from cur into @str
end
close cur
deallocate cur
if len(@retStr)>0
set @strEnd=substring(@retStr,1,len(@retStr)-1)
'
exec sp_executesql @sql,N'@strEnd nvarchar(2000) output',@val output
end
执行:
表pro_lbsxb:
ID lbsx_value lbsx_isList lbsx_order
1 A 1 1
2 B 1 2
3 C 1 3
4 D &
相关文档:
应用中发现sql中的and及or的执行效率问题
sql语句,为什么把最后的or换成and,查询的就很快,使用的是mssql范例中northwind数据库为例,
select * from Orders a left join [Order Details] b on a.orderid = b.orderid
where a.customerid like '%ics%' or b.productid in (42,72)
追踪了语句的执行方案,发现 ......
上回说到,操作Object Array
其实还可以这样操作:
var Room = [
{
ID: 'bot',
name: 'test' ......
原文地址:http://www.cnblogs.com/wangxiaohuo/archive/2008/04/20/1162631.html
本文档主要从oracle与sql server语法上进行差异性比较,诸如两者在管理,性能,优化等方面的差异不作比较。
●概念上区别
1.Oracle 是一种对象关系数据库管理系统(ORDBMS),而Sql server 只是关系型数据库管
&nbs ......
-----------------------------------------------------------------------------------------------------------------------
create table tb(id varchar(3) , pid varchar(3) , name varchar(10))
insert into tb values('001' , null , '广东省')
insert into tb values('002' , '001' , '广州市')
insert i ......
* 最近因为开发活动需要,用上了Eclipse,并要求使用精简版的SQL(即 2005)来进行开发项目 *
1.准备工作: 准备相关的软件(Eclipse除外,开源软件可以从官网下载)
<1>.Microsoft 2005 Express Edition
下载地址:http://download.microsoft.com/download/0/9/0 ......