laravel检查其他表中的值,如果不存在则返回它

时间:2017-08-10 06:19:20

标签: laravel-5.4

我有两张桌子。

访问表

field acceskey

用户表

field acceskey default to null

在table1中我已经有500行了 在用户中我有10行

现在,如果没有正在使用的accesskey,我想检查用户。来自访问表。

示例条目 访问表

55 56 57 58 59

用户表

' 55' '空' '空' '空'

users表中的accesskey默认为null,因此只有1个用户具有访问密钥。

提前谢谢。

1 个答案:

答案 0 :(得分:0)

您必须使用具有条件的访问表加入您的用户表 其中用户的访问密钥在访问的访问密钥中不匹配 现在结果将是唯一的,没有用户的访问密钥,但它包括用户的空密钥 删除它使用select语句 很好地,你得到了未使用的acceskey的结果。

$data = DB::table('user')
    ->leftJoin('access','access.acceskey', '!=', 'user.acceskey')
    ->where('access.acceskey','!=','null')
    ->select('access.acceskey')
    ->get();