thinkphp 联表 连表构造sql语句错误的解决方式

发布时间:2024-07-16 11:36:00

在 ThinkPHP 中使用联表(连表)查询时,构造 SQL 语句时可能会遇到一些问题。以下是一些常见的错误及其解决方案:

重点是,['a.id'=>'asc'],'a.id asc')
Db::connect($site)->table('cmf_cms_archives')->alias('a')
    ->leftjoin('cmf_cms_appsoft soft','a.id=soft.id')
    ->field('a.id,a.title')
    ->where($where)
    ->whereIn('title',$app_key)
    ->chunk(1000,function ($result) use ($site,$icpapp){
        foreach ($result as $item){
            $icpname = $icpapp[$item['title']]??'';
            if(empty($icpname)){
                return;
            }
            $id = $item['id'];
            Db::connect($site)->table('cmf_cms_appsoft')->where(['id'=>$id])->update([
                'icp_app'=> $icpname
            ]);
         
        }
    },['a.id'=>'desc'],'a.id desc');