php开发技巧

laravel 判断数据库中是否存在表/字段

2020-06-22  本文已影响0人  顶尖少爷

判断是否存在表

Schema::connection("mysql_log")->hasTable($tableName)

判断是否存在字段

Schema::connection("mysql_log")->hasColumn($tableName,'register_time')

laravel中同样的表结构合并查询

        $tableNames=[];
        for($i=0; $i<=$longDay; $i++){
            $sqlName="sql".$i;
            $date = date('Ymd',time()-$i*86400);
            $tableName = "log_game_".$gameId."_".$date;
            $model =new GameLoginLogModel();
            $model->setTable($tableName);

            if(Schema::connection("mysql_log")->hasTable($tableName) &&Schema::connection("mysql_log")->hasColumn($tableName,'register_time')){
                $tableNames[]=$tableName;
                $datas[$sqlName]=DB::connection("mysql_log")->table($tableName)->where(["user_id"=>$userId]);
            }
        }

        $lastTableName =end($tableNames);
        $sql =DB::connection("mysql_log")->table($lastTableName)->where(["user_id"=>$userId]);
        foreach ($datas as $data){
            $sql->union($data);
        }
        $result = $sql->paginate(5);
上一篇 下一篇

猜你喜欢

热点阅读