我需要一些帮助我的查询,基本上我试图获取所有我的order_items在桌子上,但我需要通过user_id获取所有项目,但有一个细节,我想包括也包括在列上的记录不同users_id上同一封电子邮件的3倍以上。
例如:
table:
- id;
- user_id;
- email;
1-从我的所有记录中获取(user_id); 2 - 获取所有记录,其中3个不同的user_id具有相同的电子邮件值;
这是我的问题:
$orders = OrderItem::select('email','user_id')->where('user_id',Auth::user()->id)->distinct('email')->get();
答案 0 :(得分:0)
这应该有效:
$orders = OrderItem::select(DB::raw('count(*) as email_count,email,user_id'))
->groupBy('email')
->where('email_count','>',2)
->orWhere('user_id',Auth::user()->id)
->get();