Ticket(票据表)
IdTicket(票号)
TicketType(票的种类)
Customer(客户)
WriteDate(开票日期)item(收费项目表)
Id(收费项目编号)
name(收费项目名称)money(收费金额表)
IdTicket(票号)
name(收费项目)
unit(金额单位)
Amount(数量)
Money(总额) 因为收费项目有50多个,但并不是每种票据都有这么多收费项目,一般一种票据也就只有45种收费项目. Ticket为票据表也就是一张主表,是一些票据共有的基本信息,item是全部的收费项目,有50多种,也就是50多条记录,money就是一个细表,票据表的某条票据记录有几个收费项目,这个表就会有该条记录的几个收费项目的记录现在要做一张报表,报表要列出所有的收费项目,票据号 客户 收费项目1 收费项目2 ...... 收费项目 8 ...... 收费项目N
00001 **公司 100 200 412
我要怎样查出这样的记录呢?
IdTicket(票号)
TicketType(票的种类)
Customer(客户)
WriteDate(开票日期)item(收费项目表)
Id(收费项目编号)
name(收费项目名称)money(收费金额表)
IdTicket(票号)
name(收费项目)
unit(金额单位)
Amount(数量)
Money(总额) 因为收费项目有50多个,但并不是每种票据都有这么多收费项目,一般一种票据也就只有45种收费项目. Ticket为票据表也就是一张主表,是一些票据共有的基本信息,item是全部的收费项目,有50多种,也就是50多条记录,money就是一个细表,票据表的某条票据记录有几个收费项目,这个表就会有该条记录的几个收费项目的记录现在要做一张报表,报表要列出所有的收费项目,票据号 客户 收费项目1 收费项目2 ...... 收费项目 8 ...... 收费项目N
00001 **公司 100 200 412
我要怎样查出这样的记录呢?
1,创建临时表
2,用游标访问money的第条数据,修改临时表的数据
from
(select IdTicket,unit,row_number()over(partition by IdTicket order by name) as rn
from TS
)
GROUP BY IdTicket
decode(rn,3,name)
说name无效