Question[SQL]:Can you use a SQL statement to calculating it!

Question:Can you use a SQL statement to calculating it!

How can I print "10 to 20" for books that sell for between $10 and $20,"unknown" for books whose price is null, and "other" for all other prices?

Answer:

    if OBJECT_ID('dbo.Table101301'is not null
        
drop table dbo.Table101301
    
create table dbo.Table101301
    (
        
[bookid] int not null,
        
[bookname] varchar(10),
        
[price] varchar(10
    )
    
insert into dbo.Table101301 values(1,'book1'1)
    
insert into dbo.Table101301 values(2,'book2'5)
    
insert into dbo.Table101301 values(3,'book3'8)
    
insert into dbo.Table101301 values(4,'book4'10)
    
insert into dbo.Table101301 values(5,'book5'12)
    
insert into dbo.Table101301 values(6,'book6'null)
    
insert into dbo.Table101301 values(7,'book7'20)
    
insert into dbo.Table101301 values(8,'book8'21)
    
insert into dbo.Table101301 values(9,'book9'null)
    
    
select [bookid][bookname],
        
[price] = (
            
case 
                
when [price]  is null then 'unknown' 
                
when [price] between 10 and 20 then '10 to 20'
                
else [price]
            
end 
        )
        
from dbo.Table101301    
    
    
drop table dbo.Table101301

 

posted @ 2008-10-13 13:00  chenjunbiao  阅读(205)  评论(0编辑  收藏  举报