• tp5数据库——查询方法


    查询方法

    条件查询方法

    where方法

    可以使用where方法进行AND条件查询:

    Db::table('think_user')
        ->where('name','like','%thinkphp')
        ->where('status',1)
        ->find();

    多字段相同条件的AND查询可以简化为如下方式:

    Db::table('think_user')
        ->where('name&title','like','%thinkphp')
        ->find();

    whereOr方法

    使用whereOr方法进行OR查询:

    Db::table('think_user')
        ->where('name','like','%thinkphp')
        ->whereOr('title','like','%thinkphp')
        ->find();

    多字段相同条件的OR查询可以简化为如下方式:

    Db::table('think_user')
        ->where('name|title','like','%thinkphp')
        ->find();

    混合查询

    where方法和whereOr方法在复杂的查询条件中经常需要配合一起混合使用,下面举个例子:

    $result = Db::table('think_user')->where(function ($query) {
        $query->where('id', 1)->whereor('id', 2);
    })->whereOr(function ($query) {
        $query->where('name', 'like', 'think')->whereOr('name', 'like', 'thinkphp');
    })->select();

    生成的sql语句类似于下面:

    SELECT * FROM `think_user` WHERE  (  `id` = 1 OR `id` = 2 ) OR (  `name` LIKE 'think' OR `name` LIKE 'thinkphp' )

    注意闭包查询里面的顺序,而且第一个查询方法用where或者whereOr是没有区别的。

    getTableInfo方法

    使用getTableInfo可以获取表信息,信息类型 包括 fields,type,bind,pk,以数组的形式展示,可以指定某个信息进行获取

    // 获取`think_user`表所有信息
    Db::getTableInfo('think_user');
    // 获取`think_user`表所有字段
    Db::getTableInfo('think_user', 'fields');
    // 获取`think_user`表所有字段的类型
    Db::getTableInfo('think_user', 'type');
    // 获取`think_user`表的主键
    Db::getTableInfo('think_user', 'pk');
  • 相关阅读:
    进程笔记(一)
    Docker(二) 镜像
    Docker(一) 简介
    Nginx(二) 常用配置
    4、ABPZero系列教程之拼多多卖家工具 集成短信发送模块
    3、ABPZero系列教程之拼多多卖家工具 项目修改及优化
    2、ABPZero系列教程之拼多多卖家工具 更改数据库为Mysql
    1、ABPZero系列教程之拼多多卖家工具 前言
    asp.net mvc 记录Action耗时
    [转]C#异步的世界【上】
  • 原文地址:https://www.cnblogs.com/fei-H/p/11763646.html
Copyright © 2020-2023  润新知