【发布时间】:2019-03-20 18:04:36
【问题描述】:
你好我有这个功能
//Get Total Number of Personal Leads By User ID & Requested week Through Each Day
//Get Total Number of Personal Leads By User ID & Requested week Through Each Day
$personalleads = \DB::table('leads')
->where('owned_by_id', $id) // User ID
->where('lead_source_id', 7) // 7 = Personal Lead
->whereBetween('created_at', [$weeks[$week]]) // get week through GET request & Query the data
->select(\DB::raw('DATE(created_at) as date'), \DB::raw('count(*) as pleads'))
->groupBy('date')
->get(); // Get All Data
//Get Total Number of leads Created by Managers By User ID & Requested week Through Each Day
$managerleads = \DB::table('leads')
->where('owned_by_id', $id) // User ID
->where('lead_source_id', 3) // 3 = Manager Lead
->whereBetween('created_at', [$weeks[$week]]) // get week through GET request & Query the data
->select(\DB::raw('DATE(created_at) as date'), \DB::raw('count(*) as mleads'))
->groupBy('date')
->get(); // Get All Data
//Get Total Number of leads Created by Admins By User ID & Requested week Through Each Day
$adminleads = \DB::table('leads')
->where('owned_by_id', $id) // User ID
->where('lead_source_id', 4) // 4 = Admin Lead
->whereBetween('created_at', [$weeks[$week]]) // get week through GET request & Query the data
->select(\DB::raw('DATE(created_at) as date'), \DB::raw('count(*) as aleads'))
->groupBy('date')
->get(); // Get All Data
我想返回所有的数据 喜欢
return $adminleads+personalleads+managerleads;
我知道这是无效的,但我想一次显示所有数据 这是我仅返回 $personalleads 时得到的输出
[{"日期":"2019-02-10","请求":1},{"日期":"2019-02-12","请求":1},{"日期":" 2019-02-14","恳求":1}]
我怎样才能让它像
[{"date":"2019-02-10","pleads":1,"aleads":1,"mleads":1},{"date":"2019-02-12","恳求":1,"aleads":1,"mleads":1},{"日期":"2019-02-14","pleads":1,"aleads":1,"mleads":1}]
非常感谢
【问题讨论】:
-
最有效的方法高度依赖于您的数据库架构。您能否提供您用于检索三个不同潜在客户数量的完整代码。
-
非常感谢您的评论我添加了完整的代码
-
我认为您可以使用
union做到这一点,请参阅此问题stackoverflow.com/questions/54659587/…