sql中case when 的用法,字符串拼接,以及连接其他服务器数据库。

select       
  a.acct_week  
  ,a.BRANCH_CD  
  ,a.store_cd    
  ,a.item_cd    
 
select       
  a.acct_week  
  ,a.BRANCH_CD  
  ,a.store_cd    
  ,a.item_cd    
  ,a.jan    
  ,a.sales_cnt  
  ,a.POS_CUSTOMER_CNT
  ,a.PI    
  ,a.GoalPI    
  ,round(a.GoalPI*a.POS_CUSTOMER_CNT/1000,0) as goal_sales_cnt
  ,(case     
    when (a.PI='' or a.PI=0 or a.PI is null) then '-' 
           when a.PI>(a.GoalPI/3) then '-'
     else '対象'    
    end     
           ) as PIフィルタ  
  ,(case     
    when (a.PI='' or a.PI=0 or a.PI is null) then '-' 
           when a.PI<(a.GoalPI*2) then '-'
     else '対象'    
     end     
           ) as PIフィルタ1  
into #dataB    
from       
  #dataA as a   
   

 

case when 的用法

if object_id('tempdb..#num_store_cd') is not null drop table #num_store_cd  
create table #num_store_cd          
(              
  num int            
, store_cd int          
)              
               
--select * from #num_store_cd          
if @e>@f ---------------------------------------------得20个店ID号
begin              
insert into #num_store_cd--------------  表相同要在外边建立好表再插入        
select               
  num,store_cd          
from               
  #store             
where               
  num between @d and @f        
end               
               
if @e<=@f              
begin               
insert into #num_store_cd--------------  表相同要在外边建立好表再插入        
select               
  num,store_cd          
from               
  #store             
where               
  num between @d and @e        
end              

 

OPENDATASOURCE(''SQLOLEDB'',''Data Source=;User ID=;Password='').DB(数据库).dbo.MMMMMmInfo_'+@c+''+CONVERT(varchar(8),@store_cd)+'            (表)

字符串拼接,以及连接其他服务器数据库。 

posted @ 2013-05-15 13:15  笑看天下  阅读(1573)  评论(0编辑  收藏  举报