zoukankan      html  css  js  c++  java
  • 记录一下,数据库连接,高级写法

    1、 whereIn ,查询结果集写法 。

    $data = Db::name('admin_user')->where('status', 1)->whereIn('id', function($query) use($structure_id) {
                        $query->name('admin_structure_duty')->where([
                            'status' => 0,
                            'structure_id' => ['IN', $structure_id]
                        ])->field('user_id')->group('user_id');
                    })->field(['id', 'realname'])->select();

    2、whereIn ,数组写法。 首先拿到字段,并且转成数组。

    对返回的结果集,某个字段是数组类型时,需要遍历出,id 对应的name时,用下面的语句:

      $list = ArticleCategoryModel::get_list(); //返回结果集,但是管理员id 是 暂存的数组转的字符串。
            foreach ($list as $value) {
                $value['managerids'] = stringToArray($value['manager']);  //将字符串  转 数组 。
                $value['managers_name'] = Db::name('admin_user')->whereIn('id', $value['managerids'])->column('realname'); // 用whereIn ,将位于此数组中的所有名字,都检索出来了。指定了column ,取值 ,这个很关键。
                $value['managers_name'] = implode(',', $value['managers_name']); // 数组转字符串,方便前端输出。
            }

    3、where ,lick写法 。

    $model = $model->where('article.name', 'LIKE', '%' . $where['name'] . '%');

    用点,连接%%。

    4、就是各种 IN 

    if (AuthService::instance()->getDutyUserIDs(0, 11) == false) {
    $post['task_admin_uid|task_sign_uid|tour_uid'] = ['IN', AuthService::instance()->uids];
    }

    就是执行起来,很舒服。代码也少。

    SQL 会这样执行:where (task_admin_uid|task_sign_uid|tour_uid)IN (65),就是3种值,都有可能在这个数字里面。

    这种集合查询,效率真高。

    5、要使用Db::table 这种语法,先引入:use think\Db;

    6、用max 函数,搭配 group函数,直接找到某一个分类里面,最大值,最新值,总和等等。真的很爽。

    我连了4张表,找最新的日期,就是用的这个。

    7、where IN ,写在字段 和 参数之间 。 where OR ,写在2个参数的后面。

    例如:

  • 相关阅读:
    Mac 实用工具——迁移助理
    Mac OS 的终端工具 iTerm2 的使用及设置
    Python3的异常捕获和处理
    Python3 文件的重命名
    Linux下jetty的启动和停止
    MySQL使用select查询时,在查询结果中增加一个字段并指定固定值
    使用ThreadLocal请务必remove
    Vue基础-文本显示,v-html插入html代码
    nginx之location(root/alias)&& linux 上修改了nginx.conf 怎么重新加载配置文件生效
    CentOS7开启防火墙及特定端口
  • 原文地址:https://www.cnblogs.com/xuxiaoman/p/14289513.html
Copyright © 2011-2022 走看看