IT技术网www.itjs.cn

当前位置:首页 > 数据库 > MySQL > SQL点滴之几个有点偏的语句

SQL点滴之几个有点偏的语句

发布时间:2011-08-02 13:04 来源:未知

SQL语句是一种集合操作,就是批量操作,它的速度要比其他的语言快,所以在设计的时候很多的逻辑都会放在sql语句或者存储过程中来实现,这个是一种设计思想。但是今天我们来讨论另外一个话题。Sql页提供了丰富的函数供我们使用,还有很多操作有意想不到的结果,今天这个随笔来看看一些不常见到的sql语句。这些语句不像普通的增删查那样平白,它的奇妙之处有时候让人另眼相看。

1. 假设我想把Person.Contact表中所有人的名字用逗号连接起来,串成一个字符串,可能会想到使用游标把FirstName查出来然后逐行赋值给一个字符串变量,可是使用游标的代价是很大的。看看下面的代码:

declare @names varchar(1000)=''—注意赋值为空字符串是必须的 select @names=isnull(@names,'')+FirstName+',' from Person.Contact print @names 

查询得到的结果是(用的是AdventureWorks数据库中的Contact表):