2017-04-20 105 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」。

這是一個小我很難回答,因爲我不能完全確定你的最後部分意思..