sql语句 判断表数据是否存在另一个表中

tp5判断两个或多个表指定字段关系,利用sql关联表和条件判断来实现快速查询,然后批量删除符合条件的数据:


use think\Db;


public function test(){

    $lists = Db::query('select a.id as uid,b.id,case when a.id=b.id then 1 else 0 end as falg from fa_user a left join openvpn b on a.id=b.id');

    $ids = '';

    foreach ($lists as $k => $v){

        if ($v['falg'] === 0){

            $ids .= ($ids!='' ? ',' : '') . $v['uid'];

        }

    }


    $result = \app\admin\model\User::destroy($ids);

    return $result;

}


鼎云博客
  • 最新评论
  • 总共0条评论