thinkphp中mysql 如何嵌套查询不同的条件?
2同时标题要包含裙子,上衣,外套关系为or,
3还要排除标题包含童装,书籍,关系为and,
3个结果合并以id排序,然后取出数据.
大概类似下面的mysql 语句
(价格区间1 or 价格区间2 or 价格区间3) and (标题1 or 标题2 or 标题3) and (标题 not in(....)) order by id
然后再thinkphp 中如何用他的链式操作表示出来,尤其是里面复杂的嵌套查询条件?或者一般会采用什么样的办法?
回复内容:
1比如,我要价格在20-30 50-60 70-80 价格区间的商品,关系为or
2同时标题要包含裙子,上衣,外套关系为or,
3还要排除标题包含童装,书籍,关系为and,
3个结果合并以id排序,然后取出数据.
大概类似下面的mysql 语句
(价格区间1 or 价格区间2 or 价格区间3) and (标题1 or 标题2 or 标题3) and (标题 not in(....)) order by id
然后再thinkphp 中如何用他的链式操作表示出来,尤其是里面复杂的嵌套查询条件?或者一般会采用什么样的办法?
thinkphp的where()很好用的,可传数组的形式条件,对象形式,也可以多个参数一起,还可以接受原生sql where部分语句。也就是where('(价格区间1 or 价格区间2 or 价格区间3) and (标题1 or 标题2 or 标题3) and (标题 not in(....))') 这样是可以的,如果这样都满足不了你,你完成可以用$this->query()[M('XXX')->query()]来执行一条原生的sql
你需要的是 thinkphp 里面的 组合查询
_string _logic _complex 这几种用法可以满足了。
推荐阅读
-
thinkphp中mysql 如何嵌套查询不同的条件?
-
要筛选一个字段中符合条件的几种值应该如何查询
-
7、使用WHERE子句查询表中满足条件的记录_MySQL
-
MySQL查询同个表中不同分类的前几条记录_MySQL
-
mysql-MySQL 如何设计并查询某个结果的值,不同情况下查到另一个表的不同信息
-
MySQL中关于查询条件中的字符串空格问题_MySQL
-
7、使用WHERE子句查询表中满足条件的记录_MySQL
-
Thinkphp中如何表达MYSQL中的某字段不为空is not null
-
mysql 两个数据库中表的结构不同,如何把一个表中的数据导入到另一个表中
-
select-mysql 嵌套查询,一个表的多个字段 作为另一个表的条件,求高手