• 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');
  • 相关阅读:
    centOS7下安装GUI图形界面
    centos7 安装VMware Tools 遇到的一系列问题的解决方案
    centos7 更新源 安装ifconfig
    隐写 小案例
    linux shell脚本编程笔记(二): 分支结构
    strncmp memcmp区别
    linux shell脚本编程笔记(一): 构建基本脚本
    linux: sort排序数据 grep搜索数据
    C/C++控制台输出时设置字体及背景颜色
    boost.asio包装类st_asio_wrapper开发教程(转)
  • 原文地址:https://www.cnblogs.com/fei-H/p/11763646.html
Copyright © 2020-2023  润新知