2017-04-20 260 views
0

我有一个表格存储产品的所有记录,并且比我有其他表格存储我在表格产品中购买的所有记录。查询和比较两个表格

在我的一个页面中,我列出了所有的产品,但我只列出不是从用户处购买的产品。我如何查询产品的列表以仅显示我没有购买的产品?我怎样才能使这种比较或口才的交集?

在我的情况下,产品是来自用户的信息,或者更具体地来自咨询的答案,用户的识别符是通过电子邮件,我通过一组电子查询,并且电子邮件对于每个调查是唯一的。

例如:

$survey = $survey->answers->groupBy('email'); 

回答

0

由于您没有提供表的任何细节,我会作出一些假设:

产品表有一个ID coloumn,第二个表有某种形式的产品ID,看看已经买了什么。

你应该在这个看一看:

DB::table('bought_stuff')->whereNotIn('email', [1, 2, 3])->get(); 

,你可以在这里读到它: https://laravel.com/docs/5.3/queries#where-clauses下 “whereNotIn”。

这是一个小我很难回答,因为我不能完全确定你的最后部分意思..