Home  >  Article  >  Backend Development  >  高分悬赏解决思路

高分悬赏解决思路

WBOY
WBOYOriginal
2016-06-13 10:14:16780browse

高分悬赏
财务报表:

序号 用户名 姓名 续费(元) 赠送(元) 保证金(元) 注册费(元) IP地址费(元) 使用费(元)

0 wsz xiaobai 60 10 0 0 50 20

1 bbb zhangs 50 0 0 0 30 100


表A以下字段:

user(登录名) 
name(姓名)

-----------------------------

表B有以下3个字段:

type:(分5个类型:续费、赠送、保证金、注册费、IP地址费 ,根据不同的情况type的值就不同)

savingnum(续费)

user(登录名)

time

----------------------------
表C有以下字段:


user(登录名)

charge1(使用费)

time

----------------------------

表D有以下字段:


user(登录名)

charge2(使用费)
time

关联:这四个表的user是相等的,而且在各表中是唯一存在的。
注意:是报表,查出的值,都是某范围内的某字段的‘和’
每条记录中的使用费,如果在D表中值非空,那么就在C表中为0;如果在C表中值非0,那就不存在D表中。

问题:

1 查询:在某条件时间($star_time
2 查询:在某条件时间($star_time





------解决方案--------------------
哪要看你的需求如何?
1 表B type:(分5个类型:续费、赠送、保证金、注册费、IP地址费),类型的结构设置,对统计本身就有影响.

要么取所有用户的某种续费类型做统计,要么取单个用户的所有类型做统计,这个可以通过group by 来实现.

2 C和D表结构基本上是相同的,不知道你所谓的(如果在D表中值非空,那么就在C表中为0;如果在C表中值非0,那就不存在D表中)是何解.
如果某个用户在C表中有值又在D表中有值,哪就人为增加了难度.


------解决方案--------------------

探讨
哪要看你的需求如何?
1 表B type:(分5个类型:续费、赠送、保证金、注册费、IP地址费),类型的结构设置,对统计本身就有影响.

要么取所有用户的某种续费类型做统计,要么取单个用户的所有类型做统计,这个可以通过group by 来实现.

2 C和D表结构基本上是相同的,不知道你所谓的(如果在D表中值非空,那么就在C表中为0;如果在C表中值非0,那就不存在D表中)是何解.
  如果某个用户在C表中有值又在D表中有值,哪就人为增加了难度.



------解决方案--------------------
探讨
某条记录的charge值,在C表中存在(并非0), 就会在D表中不存在。

只要在D表中存在,就不会在C表中存在,(0都没有)
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn