开发者社区> 问答> 正文

有会Medoo的吗,求个语句?报错

select * from table where (title like '%1%' and content like '%2%') and s=1 and n=1 order by id desc

请问这样的语句用medoo该怎么写?

我这样写报错

$datas = $database->select("table","*",array('AND'=>array('LIKE'=>array('AND'=>array('title'=>'1','content'=>'2')),'s'=>1,'n'=>1),"ORDER"=>'id DESC'));

展开
收起
爱吃鱼的程序员 2020-06-14 17:56:01 560 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    方案1:

    $where=array('AND'=>array('title[~]'=>'%1%','content[~]'=>'%2%','s'=>1,'n'=>1),'ORDER'=>'idDESC');$db->select('table','*',$where);



    方案2:

    $db->query("select*fromtablewhere(titlelike'%1%'andcontentlike'%2%')ands=1andn=1orderbyiddesc");



    顺便说一句,先把有索引的条件(非like)放到前面,能够加快查询速度

    发现0.9.7版才支持[~]写法,之前的版本都不支持。。。
    2020-06-14 17:56:18
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载