yii2.0 中数据查询中 or、in、between 及session的使用
1 HTML:
2
3 <div>
4 <form class="form-inline " method="get" action="<?=Url::to(['companylist']);?>">
5 <div class="form-group">
6 <input type="text" name="name" style="width: 80%; display:inline;" class="form-control input-sm" placeholder="配电室编号 或 配电室名称" value="<?=$_GET['name'];?>">
7 <button type="submit" style="float: right" class="btn btn-primary btn-sm">查询</button>
8 </div>
9 </form>
10 </div>
11 控制器的查询条件:
12 $data = Concentrator::find()->andWhere(['in', 'id', $cIds]);
13 if ($_GET['name']) {
14 $data->andWhere(['or', ['like', 'number', $_GET['name']], ['like', 'name', $_GET['name']]]);
15 }
16 //in
17 $data->andWhere(['in', 'state', [1, 2, 3]]);
18 //between
19 $data->andFilterWhere(['between', 'create_time', $start_date, $end_date]);
20 $rowset = $data->all();
21 echo $data->createCommand()->getRawSql(); //输出sql语句
1 ['and', 'id=1', 'id=2'] //id=1 AND id=2
2
3 ['and', 'type=1', ['or', 'id=1', 'id=2']] //type=1 AND (id=1 OR id=2)
4
5 ['between', 'id', 1, 10] //id BETWEEN 1 AND 10
6
7 ['not between', 'id', 1, 10] //not id BETWEEN 1 AND 10
8
9 ['in', 'id', [1, 2, 3]] //id IN (1, 2, 3)
10
11 ['not in', 'id', [1, 2, 3]] //not id IN (1, 2, 3)
12
13 ['like', 'name', 'tester'] //name LIKE '%tester%'
14
15 ['like', 'name', ['test', 'sample']] //name LIKE '%test%' AND name LIKE '%sample%'
16
17 ['not like', 'name', ['or', 'test', 'sample']] //not name LIKE '%test%' OR not name LIKE '%sample%'
18
19 ['like', 'name', '%tester', false] // name LIKE '%tester'
20
21 ['exists','id', $userQuery] //EXISTS (sub-query) | not exists
22
23 ['>', 'age', 10] //age>10
24 where(['<>','id',10]) //不等于
session:
$session = Yii::$app->session;
$session['user'] = [
'id' => 1,
'username' => 'yiiuser',
];
echo $session['user']['id'];
echo $session['user']['username'];
yii2.0 中数据查询中 or、in、between 及session的使用的更多相关文章
- Django中数据查询(万能下换线,聚合,F,Q)
数据查询中万能的下划线基本用法: __contains: 包含 __icontains: 包含(忽略大小写) __startswith: 以什么开头 __istartswith: 以什么开头(忽略大小 ...
- Django数据查询中对字段进行排序
Django数据查询中对字段进行排序 第一种方法:使用order_by进行排序 Articlelist = Article.objects.filter(**kwargs).order_by('n ...
- 下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作
下面介绍一下 Yii2.0 对数据库 查询的一些简单的操作 User::find()->all(); 此方法返回所有数据: User::findOne($id); 此方法返回 主键 id=1 的 ...
- JavaWeb_(Hibernate框架)Hibernate中数据查询语句SQL基本用法
本文展示三种在Hibernate中使用SQL语句进行数据查询基本用法 1.基本查询 2.条件查询 3.分页查询 package com.Gary.dao; import java.util.List; ...
- JavaWeb_(Hibernate框架)Hibernate中数据查询语句Criteria基本用法
Criteria进行数据查询与HQL和SQL的区别是Criteria完全是面向对象的方式在进行数据查询,将不再看到有sql语句的痕迹,使用Criteria 查询数据包括以下步骤: 1. 通过sessi ...
- 8.15 session 有效时间, session在数据查询中最后不用
1.在tomcat-->conf-->conf/web.xm中的<session-config>中设置: <session-config> <session- ...
- powerbulider9.0在数据窗口中实现滚动到新添加行
powerbuilder9.0对数据窗口进行增加行操作,然后实现滚动到指定行时,应先滚动到指定行dw_1.scrolltorow( row),然后设置新添加的行为当前行dw_1.setrow( row ...
- Sql中联合查询中的”子查询返回的值不止一个“的问题
在子查询中,如果想实现如下的功能: select lib,count(*),select sum(newsNo) from Table1 group by lib from Tabel1 T1,Tab ...
- mysql中in查询中排序
mysql中in查询条件的时候,很多时候排序是不规则的,如何按照in里面的条件进行排序呢? mysql中给出了办法,在in后面加order by field,order by field的首个条件是按 ...
随机推荐
- CopyTranslator安装与使用
PDF 格式的文本,本质上是保证了在大部分设备上都能保持清晰完整的排版格式,但不利于进一步使用,但是 PDF 文档文字复制会包括回车键,文字粘粘和翻译都不方便.通常的做法就是,先转换成 Word 格式 ...
- 重新开始记录java教程
最近在工作上学到了很多的知识和经验,以后每天都来记录给博客园上面
- Hadoop基础------>MR框架-->WordCount
认识Mapreduce Mapreduce编程思想 Mapreduce执行流程 java版本WordCount实例 1. 简介: Mapreduce源于Google一遍论文,是谷歌Mapreduce的 ...
- django配置跨域并开发测试接口
1.创建一个测试项目 1.1 创建项目和APP django-admin startproject BookManage # 创建项目 python manage.py startapp books ...
- Django、haystack、whoosh实现全局搜索
Django.haystack.whoosh实现全局搜索 关注公众号"轻松学编程"了解更多. [参考:https://blog.csdn.net/zhaogeno1/article ...
- mkdir()和mkdirs()区别
mkdir()和mkdirs()区别如下: mkdirs()可以建立多级文件夹, mkdir()只会建立一级的文件夹, 如下: new File("/tmp/one/two/three&qu ...
- Linux下开发环境的搭建(For C++ OIer)
说句实话,对于OIer来说,Linux真的是个很好的开发平台. 这里既没有游戏的喧嚣,也没有广告的打扰,gcc/g++早已预装,一切已为你准备好......(???)即使对于日常使用,也绰绰有余. 如 ...
- CF957E Contact ATC
二维偏序(逆序对) 因为风速vf,-w<=vf<=w,因此我们可以算出每一艘船到达原点的时间的取值范围 即取vf=w和vf=-w时,记ai为当vf=w时的用时,记bi为当vf=-w时的用时 ...
- JAVA中常见的阻塞队列详解
在之前的线程池的介绍中我们看到了很多阻塞队列,这篇文章我们主要来说说阻塞队列的事. 阻塞队列也就是 BlockingQueue ,这个类是一个接 口,同时继承了 Queue 接口,这两个接口都是在JD ...
- Docker UnicodeEncodeError: 'ascii' codec can't encode characters in position
在容器里查询nova服务的时候字符集报错问题留档及处理方法: 1.在容器里执行nova list --all 提示 [root@stack1 region_01]# nova list --all E ...