Laravel --- 查询字段中使用表达式
比如:
select id, name, count(post) from ...
在laravel中:
$user = $this
->select(
'id',
'name',
DB::raw('count(post)')
)
->join(...)
->first()
执行后会报错: laravel Syntax error or access violation: 1140 Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clause
但是后面显示的sql语句放到mysql中可以执行,原因是laravel默认使用严格模式,在config/database.php中关闭
'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => false, // 关闭严格模式
'engine' => null,
],
Laravel --- 查询字段中使用表达式的更多相关文章
- mysql查询字段中含有中文
		
查询mysql数据库中字段中含有中文使用正则表达式: 例如: select create_time,nickname from eb_engineer where not(nickname regex ...
 - laravel查询构造器中别名的问题
		
Laravel框架对数据库的封装是比较完善的,用起来也比较方便.但之前有一个问题一直困扰着我,就是利用laravel作查询时.如果想给表名或是字段名起别名是比较麻烦的事.但翻阅它的文档不难发现,它提供 ...
 - sql查询字段中的值长度最大的记录
		
SELECT max(length(字段)) FROM 表名;
 - ORACLE查询字段中含有空格的数据
		
SELECT * FROM T_NAME WHERE REGEXP_LIKE(COLNAME, '( )+'); SELECT * FROM T_NAME WHERE length(COLNAME) ...
 - msyql在查询字段中的所有记录,不重复
		
mysql> select * from a ; +----+------+--------------+ | id | name | descri | +----+------+ ...
 - sybase数据库和oracle数据库中字段中含有换行符的解决办法
		
最近在做数据库从sybase到oracle的迁移工作,sybase数据库表bcp导出后,通过sqlldr导入到oracle数据库,然后oracle数据库通过spool按照sybase数据库bcp的格式 ...
 - SQL查询数据库中所有指定类型的字段名称和所在的表名
		
--查询数据库中所有指定类型的字段名称和所在的表名 --eg: 下面查的是当前数据库中 所有字段类型为 nvarchar(max) 的字段名和表名 SELECT cols.object_id , co ...
 - MySQL在字段中使用select子查询
		
前几天看别人的代码中看到在字段中使用select子查询的方法,第一次见这种写法,然后研究了一下,记录下来 大概的形式是这样的: select a .*,(select b.another_field ...
 - MySQL使用select查询时,在查询结果中增加一个字段并指定固定值
		
假设需求是这样的: mysql> desc user; +-------+----------+------+-----+---------+----------------+ | Field ...
 
随机推荐
- git commit 报错  There was a problem with the editor 'vi'
			
今天提交代码git commit -a的时候出现了这个错误 上网查了一下,说是Vim的返回值出错了,出错的原因还在翻译英文, 先贴出解决方案吧 git config --global core.ed ...
 - CUDA中block和thread的合理划分配置
			
CUDA并行编程的基本思路是把一个很大的任务划分成N个简单重复的操作,创建N个线程分别执行执行,每个网格(Grid)可以最多创建65535个线程块,每个线程块(Block)一般最多可以创建512个并行 ...
 - 如何JOPtionPane的showConfirmDialog对话框button设置监视器
			
只是最近才知道javaGUI编程.我认为,独立撰写一个记事本,要在其中的对话框过程button设置监视器.但找了一下api相应的方法已被发现,只有找到: Returns: an integer ind ...
 - WPF 的毛玻璃效果
			
原文:WPF 的毛玻璃效果 版权声明:本文为博主原创文章,未经博主允许不得转载. https://blog.csdn.net/koloumi/article/details/76917519 其实很简 ...
 - Android的APK文件的反编译方法【转】
			
实用的收藏一下. 来自:http://www.dewen.org/q/711/%E8%AF%B7%E6%95%99Android%E7%9A%84APK%E6%96%87%E4%BB%B6%E7%9A ...
 - UML静态视图——类图、对象图、包图
			
绘画类的最重要的图是抽象类.让我们回顾一下类的基本内容. 一.分类 1.类的概念: 面向对象编程的类是一个基本概念.类是具有相同特性的.办法.集合语义和一组对象的关系. 2.类分类: 实体类:保存要放 ...
 - matlab 类型转换(类型判断)
			
char:Convert to character array,转换为字符数组:matlab 下没有 str 字符串类型转换: char(0-255) ⇒ ASCII 码的转换: im2double( ...
 - nginx 502错  failed (13: Permission denied)
			
安装nginx和php-fpm之后出现502错误 找了个理由说php-fpm不启动 ,但在我的实践中,该过程开始 找了半天没找到病因.视图nginx记录后 我发现下面的错误 [crit] 2686#0 ...
 - 早期malloc分配时,如果内存耗尽分配不出来,会直接返回NULL。现在分配不出来,直接抛出异常(可使用nothrow关键字)
			
今天和同事review代码时,发现这样的一段代码: Manager * pManager = new Manager(); if(NULL == pManager) { //记录日志 return f ...
 - 虚拟机安装的kali无法识别本机物联网卡
			
http://blog.csdn.net/sb985/article/details/76427624