问题并不大,但逻辑在某些时候变得很难,所以同样存在。我必须将客户数据保存到sql表中。客户记录在excel shet中看起来像这样。合同期限为6个月或12个月。每个客户在一个月后分期付款。每个月有两个记录分期付款金额和佣金金额。 excel表有这样的记录数据
SR,
CustomerID,
Customername,
CompanyName,
relationType,
ContractStartDate,
ContractDuration,
TotalInstallment,
Comission,
paymentMode,
JanuaryInstallment,
JanuaryCommision,
...
DecemberMonthInstallment,
DecemberMonthCommision
为此我在sql中定义了这些表:
这些表格是否正确?我对月份名称记录感到困惑,我把它放在分期付款表中,每个分期付诸如(firstInstallmentMonth
,firstinstallment
,firstinstallmentCommision
)
我很困惑,引导我前辈?
答案 0 :(得分:2)
我认为您希望将Installment表规范化为类似
的内容Table INSTALMENT
contract_id -- FK to contract table
date -- used to specify month and date
instalment -- the instalment amount
commission -- the commission amount
primary key (contract_id, date)
您可以浏览excel表并为每一部分创建一个条目(注意,这是伪代码):
insert into INSTALMENT
(contract_id, to_date('01-01-year', 'DD-MM-YYYY'), JanuaryInstalment, JanuaryCommission)
insert into INSTALMENT
(contract_id, to_date('01-02-year', 'DD-MM-YYYY'), FebruaryInstalment, FebruaryCommission)
insert into INSTALMENT
(contract_id, to_date('01-03-year', 'DD-MM-YYYY'), MarchInstalment, MarchCommission)
等
EDIT2:添加了伪to_date
日期格式以避免混淆。
答案 1 :(得分:1)
我建议读这个: http://en.wikipedia.org/wiki/Database_normalization
我会将月份放在“分期付款”表中,因为每个分期付款都有不同的月份