当前位置: 代码迷 >> SQL >> sql中的CHARINDEX跟临时表
  详细解决方案

sql中的CHARINDEX跟临时表

热度:34   发布时间:2016-05-05 11:22:13.0
sql中的CHARINDEX和临时表

update #temp

set #temp.Recycle=case when UnionA.num>0 then 1 else 0 end

from (select GradeID,sum(num)as num from AreaAllot

     where CHARINDEX(@Area,AreaAllot.Area)=1 and LEN(@Area)=LEN(Area)-2

     group by GradeID)UnionA inner join #temp
    
on UnionA.GradeID=#temp.GradeID

 

1、对于这个CHARINDEX今天纠结了很久才算弄明白是怎么个意思,为了以后忘记,所以大概的做一下笔记,

CHARINDEX(@Area,AreaAllot.Area)[email protected],等于1表示起始位置为第一位,如果等于2表示起始位置为第二位,依此类推,[email protected]
列子:
select CHARINDEX('43','414305')
select CHARINDEX('43','4305')
 
 
2、以前我一直以为group by 和order by是一个意思,就是排序,今天才知道原来group by是用来分类的。