首先数据库基本查询是没有问题的

  1. <?php
  2.  
  3. namespace app\index\controller;
  4. use think\Db;
  5.  
  6. class Demo5
  7. {
  8. //1.单条查询
  9. public function find()
  10. {
  11. $res = Db::table('customers')
  12. ->field('Name,CustomerID')
  13. ->where('CustomerID', '=', 1)
  14. ->find();
  15. dump(is_null($res) ? '没有找到' : $res);
  16. }
  17.  
  18. }

返回结果为:

但是当field参数为数组,需要给字段起别名时:

  1. <?php
  2.  
  3. namespace app\index\controller;
  4. use think\Db;
  5.  
  6. class Demo5
  7. {
  8. //1.单条查询
  9. public function find()
  10. {
  11. $res = Db::table('customers')
  12. // ->field('Name,CustomerID')
  13. ->field(['CustomerID'=>'顾客编号'])
  14. ->where('CustomerID', '=', 1)
  15. ->find();
  16. dump(is_null($res) ? '没有找到' : $res);
  17. }
  18.  
  19. }

却报了以下错误:

(修改字段为中文时才会出现该错误,小白看不懂报错...)查询手册发现,还有另外一种起别名的方法:

  1. <?php
  2.  
  3. namespace app\index\controller;
  4. use think\Db;
  5.  
  6. class Demo5
  7. {
  8. //1.单条查询
  9. public function find()
  10. {
  11. $res = Db::table('customers')
  12. // ->field('Name,CustomerID')
  13. // ->field(['CustomerID'=>'顾客编号'])
  14. ->field('CustomerID as 顾客编号')
  15. ->where('CustomerID', '=', 1)
  16. ->find();
  17. dump(is_null($res) ? '没有找到' : $res);
  18. }
  19.  
  20. }

结果成功运行:

不禁好奇:是不支持数组参数起别名了吗?还是说我哪里配置的不正确?

ThinkPHP5.1中数据查询使用field方法数组参数起别名时遇到的问题的更多相关文章

  1. kibana中信息分类查询显示的方法

    1.什么是kibana? kibana是ELK(elasticsearch+logstash+kibana)中的K,它是一个可灵活的分析和可视化平台,主要是显示数据以及根据这些数据绘出一些可视化图表, ...

  2. Dapper中数据表的字段(列)与实体属性不一致时,如何手动配置它们之间的映射?

    NET[C#]Dapper中数据表的字段(列)与实体属性不一致时,如何手动配置它们之间的映射? 问题描述 比如有如下的数据表结构:Person: person_id int first_name va ...

  3. mysql中有关查询的技巧方法

    * 查最高值或者最低值对应行的数据: 查询Score表中的最高分的学生学号和课程号: 两种方法(子查询或者排序): 子查询法:select sno,cno from score where degre ...

  4. JavaWeb_(Hibernate框架)Hibernate中数据查询语句Criteria基本用法

    Criteria进行数据查询与HQL和SQL的区别是Criteria完全是面向对象的方式在进行数据查询,将不再看到有sql语句的痕迹,使用Criteria 查询数据包括以下步骤: 1. 通过sessi ...

  5. JavaWeb_(Hibernate框架)Hibernate中数据查询语句HQL基本用法

    HQL(Hibernate Query Language) 是面向对象的查询语言, 它和 SQL 查询语言有些相似. 在 Hibernate 提供的各种检索方式中, HQL 是使用最广的一种检索方式. ...

  6. Django中数据查询(万能下换线,聚合,F,Q)

    数据查询中万能的下划线基本用法: __contains: 包含 __icontains: 包含(忽略大小写) __startswith: 以什么开头 __istartswith: 以什么开头(忽略大小 ...

  7. Mysql中分页查询两个方法比较

    mysql中分页查询有两种方式, 一种是使用COUNT(*)的方式,具体代码如下 1 2 3 SELECT COUNT(*) FROM foo WHERE b = 1;   SELECT a FROM ...

  8. C#3.0新增功能09 LINQ 基础07 LINQ 中的查询语法和方法语法

    连载目录    [已更新最新开发文章,点击查看详细] 介绍性的语言集成查询 (LINQ) 文档中的大多数查询是使用 LINQ 声明性查询语法编写的.但是在编译代码时,查询语法必须转换为针对 .NET ...

  9. JavaWeb_(Hibernate框架)Hibernate中数据查询语句SQL基本用法

    本文展示三种在Hibernate中使用SQL语句进行数据查询基本用法 1.基本查询 2.条件查询 3.分页查询 package com.Gary.dao; import java.util.List; ...

随机推荐

  1. Android开发各种Utils收集库

    为方便查找,已进行大致归类,其目录如下所示: Activity相关→ActivityUtils.java→Demo isActivityExists : 判断是否存在Activity launchAc ...

  2. 鉴别JS数据类型的全套方法

    ECMAScript 标准定义了 7 种数据类型:Boolean.Null.Undefined.Number.String.Symbol(ES6新增)和Object,除Object以外的那6种数据类型 ...

  3. 【Python】Java程序员学习Python(六)— 流程控制、异常处理

    和Java语言一样,Python也有基本的流程控制,简单了解下即可. 一.流程控制的元素 条件 条件就是布尔值或者布尔值的表达式,要么是True要么是False. 代码块 在Python中,代码块不是 ...

  4. LeetCode 题解之Find Peak Element

    1.题目描述 2.题目分析 在数组的首尾各加入INT_MIN ,然后遍历数组. 3.代码 int findPeakElement(vector<int>& nums) { ) ; ...

  5. IDEA 导入javaWeb项目

    导入后的项目 1. 把项目变成web项目 配置 artifact 然后这边就自动配置成了 tomcat: 然后运行 没有毛病!!

  6. 记开发个人图书收藏清单小程序开发(三)DB设计

    主要是参考豆瓣的图书查询接口: https://api.douban.com/v2/book/isbn/:9780132350884 返回内容如下: { "rating": { & ...

  7. spring mvc 解决跨域问题

    Spring MVC 从4.2版本开始增加了对CORS的支持. 在Controller上使用@CrossOrigin注解: // 指定域名 @CrossOrigin("http://doma ...

  8. 多线程应用-类(thread)

    在对class thread加锁时,锁无法正常应用,函数方式没问题. 在使用class thread方法时,并发后的查询结果不对,函数方式没问题. # -*- coding: UTF-8 -*- fr ...

  9. linux下jira搭建&破解(转自:https://www.cnblogs.com/zpw-1/p/9553358.html)

    写在前面 网络类似文章不少,但是同样的路,别人走可能一马平川,自己走可能磕磕绊绊.记录一下自己搭建过程的一路踩坑历程[目前还记得的]. 一.环境准备 1,jira7.3的运行是依赖java环境的,也就 ...

  10. Linux 系统常见命令功能大全_【all】

    Linux常见快捷键(6个) ctrl + u:剪贴光标前面 ctrl + k:剪贴光标后面 ctrl + y:粘贴 ctrl + r:查找命令 ctrl + insert:复制 shift+ ins ...