Yii的Where条件
#标准写法$stat_book_list = BookSaleChangeLog::find()
->select( [ 'book_id','SUM(quantity) AS total_count','SUM(price) AS total_pay_money' ] )
->andWhere([ 'between','created_time',$time_start,$time_end ])
->groupBy('book_id')->asArray()->all();$query = Project::find()->where(['dept_id'=>$dept_id])->all();#写完之后一定要加上one()或者是all()#对比
['>', 'id', 1] // 生成:id > 1
['<', 'id', 100] // 生成:id < 100
['=', 'id', 10] // 生成:id = 10
['>=', 'id', 1] // 生成:id >= 1
['<=', 'id', 100] // 生成:id <= 100
['!=', 'id', 10] // 生成:id != 10#并联
['and', 'id' => 1, 'id' => 2] // 生成:id=1 AND id=2
['and', 'id=1', 'id=2'] // 生成:id=1 AND id=2
['and', 'type=1', ['or', 'id=1', 'id=2']] // 生成:type=1 AND (id=1 OR id=2)#OR
['or', ['type' => [7, 8, 9]], ['id' => [1, 2, 3]]]
// 生成:(type IN (7, 8, 9) OR (id IN (1, 2, 3)))#NOT
['not', ['attribute' => null]] // 生成:NOT (attribute IS NULL)#between
['between', 'id', 1, 10] // 生成:id BETWEEN 1 AND 10
['not between', 'id', 1, 10] // 生成:id NOT BETWEEN 1 AND 10#IN
['in', 'id', [1, 2, 3]] // 生成:id IN (1, 2, 3)
['id' => [4, 8, 15]] // 生成:id IN (4, 8, 15)
['not in', 'id', [1, 2, 3]] // 生成:id NOT IN (1, 2, 3)
['in', ['id', 'name'], [['id' => 1, 'name' => 'foo'], ['id' => 2, 'name' => 'bar']]]
// 生成:(`id`, `name`) IN ((1, 'foo'), (2, 'bar'))#子查询
#用子查询作为IN条件的值
['in', 'user_id', (new Query())->select('id')->from('users')->where(['active' => 1])]#模糊查询
['like', 'name', 'tester']
// 生成:name LIKE '%tester%'['like', 'name', ['test', 'sample']]
// 生成:name LIKE '%test%' AND name LIKE '%sample%'['like', 'name', '%tester', false]
// 生成:name LIKE '%tester' 这是自定义查询方式,要传入值为false的运算数3,并且自行添加%['or like', 'name', ['test', 'sample']]
// 生成:name LIKE '%test%' OR name LIKE '%sample%'['not like', 'name', 'tester']
// 生成:name NOT LIKE '%tester%'['or not like', 'name', ['test', 'sample']]
// 生成:name NOT LIKE '%test%' OR name NOT LIKE '%sample%'['exists', (new Query())->select('id')->from('users')->where(['active' => 1])]
// 生成:EXISTS (SELECT "id" FROM "users" WHERE "active"=1)
Yii的Where条件相关推荐
- oracle数据库取前几行,Oracle数据库实现获取前几条数据的方法
如何在Oracle数据库中实现获取前几条数据的方法呢?就是类似SQL语句中的SELECT TOP N的方法.本文将告诉您答案,举例说明了哟! 1.在Oracle中实现SELECT TOP N : 由于 ...
- yii mysql条件查询_Yii框架where查询用法实例分析
本文实例讲述了Yii框架where查询用法.分享给大家供大家参考,具体如下: 1.简述 Yii的查询操作找使用where用的很多 总结下常用的哈希格式与操作符格式 2.操作符格式 适用于操作符的 [操 ...
- Yii Model中添加默认搜索条件
1 在查询中增加条件 2 3 public function defaultScope() 4 { 5 return array( 6 'condition' => " is_dele ...
- yii mysql条件查询_mysql – 在Yii2 find()/ QueryBuilder中使用WHERE条件的SELECT子查询
我能够找到子查询构建的简单示例,但是当我需要包含WHERE条件时,我无法弄清楚或找不到解决方案.我试图模拟以下声明-- SELECT ParentTable.*, (SELECT MAX(ChildT ...
- Yii AR Model CRUD数据库操作
Yii AR很好很强大,但刚开始不知道怎么使用,可以先看下官方文档官方文档:http://www.yiichina.com/guide/database.ar 下面是我对AR的一些理解对于一个Mode ...
- Yii CDbCriteria 常用方法
为什么80%的码农都做不了架构师?>>> Yii CDbCriteria 常用方法 注:$c = new CDbCriteria();是ActiveRecord的一种写法,使A ...
- Yii自定义验证规则
简单的方法:在 model 内部定义规则 最简单的定义验证规则的方法是在使用它的模型(model)内部定义. 比方说,你要检查用户的密码是否足够安全. 通常情况下你会使用 CRegularExpres ...
- 关于yii验证和yii错误处理
YII 验证和消息 <div class="yiiForm"> <?php echo CHtml::form(); ?> <table> < ...
- Yii AR Model 查询
Yii AR很好很强大,但刚开始不知道怎么使用 如果英文不错,可以直接看原文地址http://www.yiiframework.com/doc/guide/1.1/en/database.ar 下面是 ...
最新文章
- view(*args)改变张量的大小和形状_pytorch reshape numpy
- 如何判断基因组的重复区域_人类参考基因组GRCh37 VS GRCh38
- 触摸事件练习 -- 手势解锁
- 声学多普勒流速剖面仪_雷达流量计/流速仪厂家有哪些?
- Redis 实现接口访问频率限制
- python session模块_Python requests模块session代码实例
- PE知识复习之PE的导入表
- 推荐系统-Task01熟悉新闻推荐系统基本流程
- jaxb实现java对象与xml之间转换_JAXB实现XML与Java对象转换
- 使用DevCpp/DevC++调试的设置和步骤
- HashMap底层原理实现
- 985、211外,你还应该清楚这些高校联盟!
- Python网络爬虫实战:《跨越星弧》TapTap玩家评论的抓取及分析
- 印象笔记Mac版的快捷键有哪些?
- IMU(Inertial measurement unit)
- Bayes,HMM,MRF Gibbs Distribution在图像降噪中的应用
- golang 下载图片
- Mini RTK | 小巧精致、好测量
- Ray Marching
- 借鉴:软考高项备考考试心得,来自一名学员的总结,非常全
热门文章
- MapReduce多个job同时使用的方式(从网上找到的案例,原始博文:http://www.cnblogs.com/yjmyzz/p/4540469.html)
- java调用WCF问题
- SQL 分组使用案例
- Python数据分析pandas之分组统计透视表
- lisp 批量文字求差值_Python 超简单 提取音乐高潮(附批量提取)
- Faster R-CNN改进篇(二): RFCN ● RON
- SSD框架训练自己的数据集
- 基于Quartus II的在线调试方法
- tf.pad函数功能介绍
- SQL Server配置delegation实现double-hop