PHP,MySQL查询问题

<?php

                  $app = Db::table('app', 'as A')

                    ->field('A.id,A.name,A.state,A.mode,A.app_bb,IFNULL(U.us,0) as unum,IFNULL(Q.qs,0) as qnum,IFNULL(L.zx,0) as znum')->JOIN("(SELECT appid,COUNT(*) AS us FROM {$DP}user GROUP BY appid) AS U", 'A.id=U.appid')

                    ->JOIN("(SELECT appid,COUNT(*) AS qs FROM {$DP}user_log where `type` = 'clock' GROUP BY appid) AS Q", 'A.id=Q.appid')

                    ->JOIN("(SELECT appid,COUNT(*) AS zx FROM {$DP}user_logon where `last_t` > {$UTT} GROUP BY appid) AS L", 'A.id=L.appid');

                  if ($so) {

                    $app = $app->where('A.uuid', $user_id)->where('A.id', 'like', "%{$so}%")->whereOr('A.name', 'like', "%{$so}%")->whereOr('A.appkey', 'like', "%{$so}%")->order('id desc');

                  } else {

                    $app = $app->where('A.uuid', $user_id)->order('id desc')->limit($bnums, $ENUMS);

                  }

                  //                            var_dump($app,$user_id);

                  $res = $app->select(); //false

                  //die($sql);

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

                    $rows = $res[$k];

                  ?>

 

 

大佬麻烦给我解释一下这串代码意思,最近再学PHP,MySQL,从开源的源码上看到但不懂望大佬指点。

根据不同的条件,动态生成SQL语句,然后执行。

您的问题已经有小伙伴解答了,请点击【采纳】按钮,采纳帮您提供解决思路的答案,给回答的人一些鼓励哦~~

ps:开通问答VIP,享受5次/月 有问必答服务,了解详情↓↓↓

【电脑端】戳>>>  https://vip.csdn.net/askvip?utm_source=1146287632
【APP 】  戳>>>  https://mall.csdn.net/item/52471?utm_source=1146287632