thinkphp 连惯操作

以下sql语句换成thinkphp 连惯操作,要怎么写?

$sql = "select adId,adName,adURL,adFile,adPositionId from __PREFIX__ads WHERE (areaId2 = $areaId2 or areaId1 = 0 or areaId1=".$areaId1.")
                    AND adStartDate<='$today' AND adEndDate >='$today' and adPositionId>0 order by adSort asc";
                    
---------------------

$sql = "SELECT sp.shopName, g.saleCount , sp.shopId , g.goodsId , g.goodsName,g.goodsImg, g.goodsThums,g.shopPrice, g.goodsSn,ga.id goodsAttrId,ga.attrPrice
                            FROM __PREFIX__goods g left join __PREFIX__goods_attributes ga on g.goodsId=ga.goodsId and ga.isRecomm=1, __PREFIX__shops sp
                            WHERE g.shopId = sp.shopId AND sp.shopStatus = 1 AND g.goodsFlag = 1 AND g.isSale = 1 AND g.goodsStatus = 1 AND g.goodsCatId2 = $cat2Id AND sp.areaId2=$areaId2
                            ORDER BY g.saleCount desc limit 8";                    
阅读 2.3k
2 个回答

第一个你先试试,对的话我给你写第二个

$model = M("ads");
$where['areaId2|areaId1'] = [$areaId2,[0,".$areaId1."],"'_multi'=>true"];
$map['adStartDate'] = ['elt', $today];
$map['adEndDate'] = ['egt', $today];
$map['adPositionId'] = ['gt', 0];
$result = $model->where($where)->where($map)->field("adId,adName,adURL,adFile,adPositionId")->order("adSort asc")->select();

where()->order()->select()

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进