亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

sql查詢到laravel查詢與聯合

sql查詢到laravel查詢與聯合

PHP
月關寶盒 2023-05-12 15:11:54
我想將下面的聯合查詢轉換為 laravel 查詢DB::select("select lead_master.lead_stage from lead_master inner join  user_master on user_master.user_name=lead_master.assigned_user_name where region in (".$geo_string.") and teams in (".$filter_teams_string.") group by (lead_stage) unionselect  meeting_hash from meetings_master where assigned_user_name in (".$filter_username_string.") and meeting_hash in ('follow_up','first_time') group by (meeting_hash)  union select sales_stage from opportunity_master where sales_stage in ('Identified','QO_to be  approved') and assigned_user in (".$filter_username_string.") group by (sales_stage)");以下查詢在 postgre 中正常運行
查看完整描述

1 回答

?
白豬掌柜的

TA貢獻1893條經驗 獲得超10個贊

在開始之前,我假設你了解laravel Eloquent

假設您的lead_master 表是LeadMaster Model,也是MeetingsMasterandOpportunityMaster


$lead_master = LeadMaster::select("lead_master.lead_stage as stage")

? ? ->join('user_master','user_master.user_name','=','lead_master.assigned_user_name')

? ? ->whereIn('region',$geo) //$geo is an array

? ? ->whereIn('teams',$filter_username) //also an array

? ? ->groupBy('lead_stage');


$meetings_master = MeetingsMaster::select('meeting_hash as stage')

? ? ->whereIn('assigned_user_name',$filter_username)

? ? ->whereIn('meeting_hash',['follow_up','first_time'])

? ? ->groupBy('meeting_hash');


$opportunity_master = OpportunityMaster::select('sales_stage as stage')

? ? ->whereIn('sales_stage',['Identified','QO_to be approved'])

? ? ->whereIn('assigned_user',filter_username)

? ? ->groupBy('sales_stage');


$query = $lead_master->union($meetings_master)->union($opportunity_master)->pluck('stage'); //your result

dd($query);

這就是你使用Laravel Eloquent時的樣子


ps:你不需要為此制作3個變量,我只是用它來方便維護


查看完整回答
反對 回復 2023-05-12
  • 1 回答
  • 0 關注
  • 130 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號