- Java 双重比较
- java - 比较器与 Apache BeanComparator
- Objective-C 完成 block 导致额外的方法调用?
- database - RESTful URI 是否应该公开数据库主键?
我有一个包含公司的 TreeView。每个公司都可以有子公司,每个子公司都可以有子公司,并且可以一直持续到无穷大。每家公司都有自己的 yield ,并且 FullEarnings 等于该公司所有子公司的总和。
如果已知每家公司的 yield ,我需要计算每家公司的 yield 。
例子:
CompanyName | OwnEarnings | FullEarnings
-Company1 | 25K$ | 53K$
--Company2 | 13K$ | 18K$
---Company3 | 5K$
--Company4 | 10K$
我有一个数据库列 ParentID,它链接到 id parent company。
我该怎么做?也许通过递归?
最佳答案
不管怎样,您都需要递归地更新您的表格。
在您的情况下,它看起来像:
with C as
(
select T.Id,
T.Earnings,
T.Id as RootID
from T
union all
select T.Id,
T.Earnings,
C.RootID
from T
inner join C
on T.ParentId = C.Id
)
select T.Id,
T.ParentId,
T.CompanyName,
T.Earnings,
S.FullEarnings
from T
inner join (
select RootID,
sum(Earnings) as FullEarnings
from C
group by RootID
) as S
on T.Id = S.RootID
order by T.Id
option (maxrecursion 0);
为了更新,您需要使用 update
查询更改选择,如 SQL Fiddle example 所示。
关于sql - 想出算法 : Calculate full earnings for every company,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37369789/
我有以下完整查询,但它什么也没返回。 @companies.where("(companies.status = 'active' AND (companies.status_override = '
我知道 Android 中包名称的标准约定是 com.companyname.project ....等等我想知道对于总部设在以色列的公司来说,使用 il.co 是否有意义,特别是因为我有一个使用 .
我将公司放在引号之间,因为我的问题与我们的橄榄球队页面有关,但在 Facebook 中,它的作用就像公司页面。 我目前正在重建我的团队网站 ( BBRFC Celtic ),并且我将添加一个用户登录系
我们升级(从 MongoDB 3.4)到: MongoDB:4.2.8 Mongoose :5.9.10 现在我们收到了这些错误。对于最小的例子,模型是: [company.js] 'use stri
我有一个基础实体类MyCompany.Core.Model.User,该类将用于User实体的常用属性: public class User { public string Username
我已将静态(无 servlet、jsp 等)网站加载到 Tomcat 的 webapps 文件夹中。 我在 webapps/ourcompany 下有一个 index.html 文件,所以当我在 to
我正在从头设计一个网络驱动的 SQL 数据库应用程序。该应用程序将为同类行业的客户管理信息。换句话说,关于每个客户的信息(实体和它们之间的关系)在一个到另一个客户之间没有太大差异。但是,信息量取决于公
我有以下类(class): @XmlAccessorType(XmlAccessType.FIELD) @XmlType(name = "Party", propOrder = { "comp
(我将首先解释我的问题。下表(任何示例查询)可在 http://sqlfiddle.com/#!2/8ec17/4 获得) 我有一张股票信息表,如下: sp100_id _date
关闭。这个问题是opinion-based .它目前不接受答案。 想改善这个问题吗?更新问题,以便可以通过 editing this post 用事实和引文回答问题. 6年前关闭。 Improve t
我决定将自己的 Prelude 用于更大的项目(包含一些库和一些可执行文件)。 Prelude 不导出一些部分函数,而是导出一些常用函数(即来自 Control.Monad 等)。然而,我正在与如
我正在使用 Joomla 的 JSN Uniform 插件来接收电子邮件,但它不接受 .company 域作为有效域。它接受常用域(com、net、org、info、biz 等),但不接受 .comp
我正在尝试让这个 API 正常工作,但遇到了这个我不知道如何解决的错误。我在标题上收到错误。我使用了来自谷歌浏览器的 postman 扩展。并尝试执行发布请求在 localhost:3000/comp
我在测试 Django RestFramework 时遇到问题。我有以下测试: def test_update_coupon(self): response = self.make_c
console.log(profile); 效果很好,它显示了这一点。 但是当我使用 console.log(profile.company);获取公司名称。 它向我展示了 Cannot read p
这似乎是一个微不足道的问题。我需要知道,如果我在值(value) 99 美元的 iOS 开发者计划:公司 下注册我的公司,我现在可以在同一家公司下添加开发者。 我的问题是,这些开发者是否还需要分别拥有
我无法再在 Android 上启动我的应用程序。 iOS 版本似乎没问题。完整的错误是: ADB0000: Could not determin the installation path for p
我为大型 Java/Maven 项目安装了新的 Emacs(在 Windows 上)。 已安装 Eclipse 和 eclim(带 java 层的 spacemacs 更新到最新版本,company-
我正在阅读基于最新版本的 iOS 的 VPN On Demand 功能。 这里的问题是:我们运行 VPN 来访问内部托管在子域上的 WebApp,例如 salexxx.company.net ,该子域
我开发了一个 Java 数据库应用程序,该应用程序已通过 Web 服务器部署给用户。现在,一切都很好,但我们要求一些外部客户也希望访问该软件。有什么方法可以让该应用程序为这些客户工作吗?该应用程序已放
我是一名优秀的程序员,十分优秀!