2012-04-25 33 views
0

这个问题并不大,但逻辑在某个时候变得很难,所以在那里也一样。我必须将客户数据保存到一个sql表中。客户记录看起来像一个excel shet。合同期限为6个月或12个月。每个客户在一个月后分期付款。每月有两笔记录安装量和交易金额。在Excel工作表中有这样是这个sql表的定义和关系是对的吗?

SR, 
CustomerID, 
Customername, 
CompanyName, 
relationType, 
ContractStartDate, 
ContractDuration, 
TotalInstallment, 
Comission, 
paymentMode, 
JanuaryInstallment, 
JanuaryCommision, 
... 
DecemberMonthInstallment, 
DecemberMonthCommision 

为了这个,我有定义SQL这些表格记录数据: enter image description here

这些表以正确的方式?而我对月份名称记录感到困惑,我是否把它安装在每一个分期付款表中(firstInstallmentMonthfirstinstallment,firstinstallmentCommision

我很困惑,引导我前辈?

+0

INSTALLMENT表未正确标准化。看看打破了第一,第二,第三等组 – Randy 2012-04-25 11:38:19

+0

好不好的例子? – buddy 2012-04-25 11:43:56

回答

2

我想你想分期付款表正常化喜欢的东西

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日期格式以避免混淆。

+0

是的,我想thanksssssssssss – buddy 2012-04-25 11:46:58

相关问题