基于可选外部键的laravel条件连接

时间:2018-06-06 13:44:10

标签: php sql laravel join

我有这个数据库结构: enter image description here

ddts包含3个可选外部键(panel_id,sawn_id或veneer_id中只有一个可以包含外部ID,其他2个等于null)。 所以一个ddt可以只是这三种类型中的一种:

  1. 面板
  2. 单板
  3. 我需要为每个company_id(另一个外部密钥)提取我将从面板,锯和胶合板中总结一些数据,但在总结之前我甚至需要将它们中的一些转换为kgs(具有我实现的功能)

    在ddts模型中我有方法:panel(),sawn(),veneer();

    我只需要最后的总和,但我想为了实现这一点,我需要建立一个庞大的集合然后操纵它... 我喜欢通过查询了解什么是最好的,以及通过代码来做什么。

    我的第一个方法是:

    1. 选择所有公司
    2. 在foreach循环中为每个公司的所有ddts
    3. 在每个ddt的foreach循环中通过选择它来关联类型 通过一个if条件steatement
    4. 在forache循环中选择要汇总的值
    5. 将其转换为必要的kgs
    6. 总结;
    7. 但是它看起来很长而且非常害羞,第2点和第3点应该由JOIN完成,但不是那么克拉如何!

0 个答案:

没有答案