收房租相关-一个数据内容变列的SQL

求助收房租相关----------------一个数据内容变列的SQL?
是这样的,有一个收支表Pay,记录房租收支记录,结构如下,
现在客户要求,不仅要汇总同一天,同一房间,还要最扣做合计..
把记录里的"收支类型",变成列显示.像下面的第2个表显示,请问如何写SQL?



1.表Pay结构,主要记录所有房租收支记录
InNo nvarchar(25) Checked   //收支编号
InDate nvarchar(15) Checked  //收支日期
InType nvarchar(15) Checked  //收支类型,包括(收押金/退押金/房费/水费/卫生费/有线费/网费/电费)
ClientName nvarchar(25) Checked  //房间编号
Cost numeric(18, 2) Checked  //收支费用


2.
日期      房间编号 收押金    退押金    房费  水费  卫生费  有线费 网费 电费 合计
------------------------------------------------------------------------------------------------------------------------------------------
2014-10-1  301房      200      0     0       0             00          10     5                       0         0          55                  270
......


------解决思路----------------------
SELECT InDate 日期,
       ClientName 房间编号,
       SUM(CASE InType WHEN '收押金' THEN cost ELSE 0 END) 收押金,
       SUM(CASE InType WHEN '退押金' THEN cost ELSE 0 END) 退押金,
       ... 
       SUM(CASE InType WHEN '电费' THEN cost ELSE 0 END) 电费,
       SUM(cost) 合计
  FROM pay
 GROUP BY InDate, ClientName

收支类型自己补齐
------解决思路----------------------
select
  InDate as  日期,
  ClientName as 房间编号,
  max(case when InType=‘收押金' then Cost else 0 end) as 收押金,
  max(case when InType=‘退押金' then Cost else 0 end) as 退押金, 
.....中间的自己写,
   sum(Cost) as 合计
from 
   pay
group by
   InDate, ClientName