首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

问个赋值的有关问题

2012-01-15 
问个赋值的问题?第一个问题?declare@RecordCountintselect@RecordCountcount(perid)fromperson本来的语句

问个赋值的问题?
第一个问题?
declare   @RecordCount   int
select   @RecordCount=count(perid)   from   person

本来的语句如上
但是后面那个判断比较复杂,是查询的,用了动态的sql语句,然后这句话该怎么写?
exec( 'select   @RecordCount=count(perid)   from '+@sql)
这样写提示变量@recordCount未声明?我该怎么把查询出来的结果count(perid)赋给@RecordCount,麻烦大家帮忙啦,谢谢

第二个问题?
三个表连在一起进行查询,怎么样写效率更高?我现在用的是动态sql,因为条件太多,我把连接的语句写在下面(大家不要笑,我是菜鸟),要改成怎样,效率会更高:
select   *
from  
person
full   join   personjob   on   personjob.perid=person.perid
full   join   person_info   on   person_info.perid=personjob.perid

没办法,分少而且发了两个问题,请大家帮帮忙

[解决办法]
declare @RecordCount int,@sql nvarchar(1000)
set @sql=N 'select @RecordCount=count(perid) from '+@sql
exec sp_executesql @sql,N 'RecordCount int output ',RecordCount
select RecordCount

热点排行