美文网首页
TP6 表达式查询

TP6 表达式查询

作者: 李白龙 | 来源:发表于2020-10-07 15:53 被阅读0次

说明:TP6更改了旧版本的表达式查询实现方式,在传入数组作为查询条件时, 如between需要变更写法

----------------------------------------------------------------------------------------------------

源码中红色线部分表示如果传入的是 where(['key' =>['A','B']) 的形式则会被转成 where key IN (A,B),否则转成 where key = xxx

绿色部分表示,只有Raw实例会按照表达式解析。所谓Raw实例就是DB::raw() 方法的返回值。

所以 between查询的数组写法可以写成如下: 

where(['key' => Db::raw("between A and B")]); 

然而这种写法过于“繁琐”,也不直观。

TP6的查询条件的“最佳实践”,从原本的关联数组的写法,变为了索引数组写法

TP5写法:

$conditon = [];

$condition[] = ['name' => '李'];

$condition[] = ['age' => ['between',[10,20]]];

$condition[] = ['id' => ['in' ,['1','2','3']]];

TP6写法:

$conditon = [];

$condition[] = ['name' ,'=', '李'];

$condition[] = ['age' ,'between',[10,20]];

$condition[] = ['id', 'in' , ['1','2','3']];

相关文章

  • TP6 表达式查询

    说明:TP6更改了旧版本的表达式查询实现方式,在传入数组作为查询条件时, 如between需要变更写法 -----...

  • dynamodb 的查询 (Query)

    按键查询的条件表达式 过滤表达式键条件表达式 在结果集中到有限条项目 给查询结果做分页 得到查询结果中的项目个数 ...

  • Mongodb学习笔记(三)之 深入查询表达式

    深入查询表达式 1. 最简单的查询表达式 {fied:value} ,是指查询field列的值为value的文档 ...

  • Elasticsearch 查询语法 --- 2022-04-0

    通过ES查询表达式(Query DSL),可以实现复杂的查询功能,ES查询表达式主要由JSON格式编写,可以灵活的...

  • ThinkPHP查询

    查询方式 表达式查询 快捷查询 区间查询 组合查询 统计查询 动态查询 SQL查询 ThikPHP支持原生SQL查...

  • LINQ语句

    //查询表达式概述//1.查询表达式用于查询并转换所有启用LINQ的数据源的数据。例如:通过一个查询即可检索sql...

  • elasticsearch 学习笔记4

    1.查询表达式 1.1 空查询 1.2 查询语句 字段匹配 1.3合并查询语句 2.查询与过滤 Elasticse...

  • SQL Server 2016 表操作:子查询

    IN 表达式 NOT IN 表达式 示例 通过 IN / NOT IN 实现多表查询 需求:有 Student、S...

  • tp6区间查询

  • LeetCode 数据库笔记

    SQL子查询:在一个表表达中可以调用另一个表表达式,这个被调用的表表达式叫做子查询(subquery) 子查询必须...

网友评论

      本文标题:TP6 表达式查询

      本文链接:https://www.haomeiwen.com/subject/xuvfpktx.html