Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 从两个表中获取数据并忽略laravel中的重复值_Mysql_Laravel - Fatal编程技术网

Mysql 从两个表中获取数据并忽略laravel中的重复值

Mysql 从两个表中获取数据并忽略laravel中的重复值,mysql,laravel,Mysql,Laravel,我在拉维尔有两张桌子。表2有一个外键i-e users\u id,因此我想从两个表中提取数据并删除重复的条目。为此,我在控制器中创建了两个查询 $new=DB::table('tabl-1') ->join('tbl2','tbl1.id','=','tbl2.foreign_key') ->orWhereDate('created_at','<' ,Carbon::today()) ->

我在拉维尔有两张桌子。表2有一个外键i-e users\u id,因此我想从两个表中提取数据并删除重复的条目。为此,我在控制器中创建了两个查询

$new=DB::table('tabl-1')
              ->join('tbl2','tbl1.id','=','tbl2.foreign_key') 
              ->orWhereDate('created_at','<' ,Carbon::today())
              ->orWhereDate('created_at', Carbon::today())
              ->orWhereNull('created_at')
              ->select('tbl_1.created_at as date','tbl1.foreign_key as data_id')
              ->where('user_id',$users_id)
              ->get()
              ->toArray();

$old = DB::table('tbl-2')
              ->join('tbl1','tbl2.foreign_key','=','tbl1.id') 
              ->where('user_id',$users_id)
              ->whereRaw('id IN (select MAX(id) FROM tbl2 GROUP BY foreign_key)')
              ->select('tbl_2.created_at as date','tbl2.foreign_key as data_id')
                    ->get()
                    ->toArray();
$data=array_merge($old,$new);
$new=DB::table('tabl-1')
->join('tbl2','tbl1.id','=','tbl2.foreign_key'))
->或者where date('created_at','有一个
array_unique()
函数,你试过了吗?也许这可以在数据合并后帮助你