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

急SQL写法

2012-01-05 
急~~求一个SQL写法!查询一个订单表:同一个订单编号时:配送费用只计费一次表中的数据如:CreateTabledbo.sho

急~~求一个SQL写法!
查询一个订单表:同一个订单编号时:配送费用只计费一次
表中的数据如:
Create   Table   dbo.shop_ordertb   (
czidint   IDENTITY   (1,   1)   PRIMARY   KEY,--   自动编号
orderidvarchar(20)   NULL   ,--   订单号
cartID         int   default   0,                                       --   购物车ID
                deliveryprice   int   default   0     --   配送费用
)

表中的数据如:
czid   orderid         cartID          deliveryprice  
1009             Q07419-02605         2838                     80

1010             Q07419-02605         2839                     80

1011             Q07419-02605         2840                     80

要得到查询的结果是:
表中的数据如:
czid   orderid         cartID          deliveryprice  
1009             Q07419-02605         2838                     80

1010             Q07419-02605         2839                     0

1011             Q07419-02605         2840                     0
应该如何写SQL语句,orderid是动态的?

[解决办法]
create table #T(czid int, orderid varchar(100), cartID int,deliveryprice int)


insert into #t select 1009, 'Q07419-02605 ', 2838,80
insert into #t select 1010, 'Q07419-02605 ', 2839,80
insert into #t select 1011, 'Q07419-02605 ', 2840,80


select czid,orderid,cartID,(case when cartID=(select min(cartID) from #t where orderid=a.orderid) then deliveryprice else 0 end) as deliveryprice
from #t as A

drop table #t

热点排行