Mysql 使用where、and或laravel的sql delete查询

Mysql 使用where、and或laravel的sql delete查询,mysql,laravel,Mysql,Laravel,您好,我正在构建一个删除查询来删除我在laravel数据库中的一行,我遇到了这个问题,我需要找到一行,其中。。。而且。。。或而且 所以在普通的php中 DELETE * FROM connection_requests WHERE `user_id`=$user->id AND `selected_user_id`=$id OR `selected_user_id`=$user->id AND `user_id`=$id; (第一个和属于,其中和第二个和属于或) 现在我如何在拉

您好,我正在构建一个删除查询来删除我在laravel数据库中的一行,我遇到了这个问题,我需要找到一行,其中。。。而且。。。或而且

所以在普通的php中

DELETE * FROM connection_requests 
WHERE `user_id`=$user->id AND `selected_user_id`=$id OR 
`selected_user_id`=$user->id AND `user_id`=$id;
(第一个
属于
,其中
和第二个
属于

现在我如何在拉威尔做到这一点,你可以试试这个

DB::table('connection_requests')
    ->where(function ($query) use ($user->id, $id) {
        $query->where('user_id', '=', $user->id)
              ->where('selected_user_id', '=', $id);
    })
    ->orWhere(function ($query) use ($user->id, $id) {
            $query->where('selected_user_id', '=', $user->id)
                  ->where('user_id', '=', $id);
    })
    ->delete();
你可以试试这个

DB::table('connection_requests')
    ->where(function ($query) use ($user->id, $id) {
        $query->where('user_id', '=', $user->id)
              ->where('selected_user_id', '=', $id);
    })
    ->orWhere(function ($query) use ($user->id, $id) {
            $query->where('selected_user_id', '=', $user->id)
                  ->where('user_id', '=', $id);
    })
    ->delete();

这将是一项工作,请尝试它的

  DB::table('connection_requests')
          ->where(['user_id'=>$user->id, 'selected_user_id'=>$id])
          ->orWhere(['user_id'=>$id, 'selected_user_id'=>$user->id])
          ->delete();

这将是一项工作,请尝试它的

  DB::table('connection_requests')
          ->where(['user_id'=>$user->id, 'selected_user_id'=>$id])
          ->orWhere(['user_id'=>$id, 'selected_user_id'=>$user->id])
          ->delete();

我自己修好的谢谢大家和我一起思考

 DB::table('connection_requests')
        ->where('user_id', $user->id)
        ->where('selected_user_id', $id)
        ->orWhere('selected_user_id', $user->id)
        ->orWhere('user_id', $id)
        ->delete();

我自己修好的谢谢大家和我一起思考

 DB::table('connection_requests')
        ->where('user_id', $user->id)
        ->where('selected_user_id', $id)
        ->orWhere('selected_user_id', $user->id)
        ->orWhere('user_id', $id)
        ->delete();

语句包装在括号内
我在laravel DB::table('connection_requests')->where('user_id',$user->id)->where('selected_user_id',$id)->或where('selected_user_id',$user->id)->删除();但是,dit没有将
语句封装在括号中
我在laravel DB::table('connection\u requests')->where('user\u id',$user->id)->where('selected\u user\u id',$id)->或where('selected\u user\u id',$user->id)->或where('user\u id',$id)->删除();但是它不起作用,因为我必须做点什么,这很好,谢谢你,因为我必须做点什么,这很好,谢谢你,没有在第一个where子句中的分号,克劳塞索里没有在第一个where子句中的分号