mysql anyvalue函数_Mysql 的ANY_VALUE()函数和 ONLY_FULL_GROUP_BY 模式
Mysql 的ANY_VALUE()函数和 ONLY_FULL_GROUP_BY 模式
1、ONLY_FULL_GROUP_BY 引发
在mysql 5.7版本以上进行一些ORDER BY 或者 GROUP BY 时,会出现如下错误
[Err] 1055 - Expression #1 of ORDER BY clause is not in GROUP BY clause and contains nonaggregated column ‘information_schema.PROFILING.SEQ’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by
他的意思是,你既然GROUP BY 或者ORDER BY了,就需要保证你SELECT 的列都在GROUP BY 和 ORDER BY 中,而一般情况下我们只是GROUP BY 和 ORDER BY 一个,两个或者三个左右的字段,而不是全部
2、通过临时去掉ONLY_FULL_GROUP_BY 模式来进行查询
查询出来现有的模式
select @@global.sql_mode;
1
去掉里面的 ONLY_FULL_GROUP_BY 模式,然后set 回去
set @@global.sql_mode = "查出来的值,去掉 ONLY_FULL_GROUP_BY "
1
3、通过修改配置文件去掉ONLY_FULL_GROUP_BY 模式来进行查询
查询出来现有的模式
select @@global.sql_mode;
1
找到mysql目录,找到bin 文件夹下面的 my.ini 配置文件
sql_mode="查出来的值,去掉 ONLY_FULL_GROUP_BY "
1
然后重启Mysql
4、通过ANY_VALUE()函数忽略没有参与分组的列
没有参与分组的字段,套一个ANY_VALUE() 即可
示例代码
SELECT ANY_VALUE(DATE_FORMAT(d.gmt_create,'%Y-%m-%d')) AS `gmt_create`,
ANY_VALUE(d.pk_id) AS `pk_id`,
ANY_VALUE(d.deleted) AS `deleted`,
ANY_VALUE(d.gmt_modified) AS `gmt_modified`,
ANY_VALUE(d.remark) AS `remark`,
ANY_VALUE(d.sort) AS `sort`,
d.time_point,
ANY_VALUE((MAX(d.visit_number)-MIN(d.visit_number))) AS `visit_number`,
ANY_VALUE((MAX(d.level)-MIN(d.level))) AS `level`,
ANY_VALUE((MAX(d.integral)-MIN(d.integral))) AS `integral`,
ANY_VALUE((MAX(d.top)-MIN(d.top))) AS `top`,
ANY_VALUE((MAX(d.article_number)-MIN(d.article_number))) AS `article_number`,
ANY_VALUE((MAX(d.fans)-MIN(d.fans))) AS `fans`,
ANY_VALUE((MAX(d.like_number)-MIN(d.like_number))) AS `like_number`,
ANY_VALUE((MAX(d.comment_number)-MIN(d.comment_number))) AS `comment_number`
FROM `data` d
GROUP BY d.time_point
ORDER BY gmt_create DESC, d.time_point DESC
LIMIT?1
mysql anyvalue函数_Mysql 的ANY_VALUE()函数和 ONLY_FULL_GROUP_BY 模式相关推荐
- mysql anyvalue报错_Mysql 的ANY_VALUE()函数和 ONLY_FULL_GROUP_BY 模式
Mysql 的ANY_VALUE()函数和 ONLY_FULL_GROUP_BY 模式 1.ONLY_FULL_GROUP_BY 引发 在mysql 5.7版本以上进行一些ORDER BY 或者 GR ...
- mysql算法函数_mysql中的函数总结
mysql中常用日期时间函数 MySQL服务器中的三种时区设置: ①系统时区---保存在系统变量system_time_zone ②服务器时区---保存在全局系统变量global.time_zone ...
- mysql 存储过程求和_MySQL - 存储过程和函数
MySQL - 存储过程和函数 创建和调用存储过程 -- 创建stu_group()存储过程,封装 分组查询总成绩,并按照总成绩升序排序的功能 -- 注意: DELIMITER 必须写在一行的最前面, ...
- concat mysql sql注入_Mysql中用concat函数执行SQL注入查询的方法
Mysql数据库使用concat函数执行SQL注入查询 SQL注入语句有时候会使用替换查询技术,就是让原有的查询语句查不到结果出错,而让自己构造的查询语句执行,并把执行结果代替原有查询语句查询结果显示 ...
- mysql 处理文件函数_mysql数据处理与函数
大纲 列的别名 concat()函数 算术运算 字符处理函数 日期时间函数 数值处理函数 聚集函数 1.列的别名 就像人的外号一样,列有时候不太好理解或者列名太长,可以给它起别名 如何使用呢? 使用 ...
- mysql 调用方差函数_MYSQL基本常用函数
MYSQL基本常用函数 一.字符的操作函数 (ps:mysql中的索引都是从1开始的.) 1.instr(param1,param2) 返回子串第一次出现的索引,若找不到则返回0. param1填写操 ...
- mysql 存储过程 队列_mysql使用存储过程函数实现批量插入
写这边文章的目的,是想结合mysql 存储过程+函数完成一个批量删除的功能吧...正好也好加深下对procedure和function的熟练操作吧... 废话不多说,我就直接上表结构啦哈,如下: cr ...
- mysql中日期函数_mysql中日期函数ADDDATE()函数用法大全
摘要: 下文讲述mysql数据库中日期函数ADDDATE方法简介说明,如下所示: ADDDATE函数简介说明 ADDDATE函数是DATE_ADD函数的同义词,具有同样的功能, 其作用为:为指定的日期 ...
- mysql的时间比对函数_MySQL 笔记 —— 时间函数、时间比较
整理下MySQL 日期时间函数及用法(5.6.*版本) 一.日期(date)相关 1.CURDATE().CURRENT_DATE().CURRENT_DATE: 同义,返回当前日期,如:2017-1 ...
最新文章
- 【自学笔记】定义一个标准的WPF窗口
- 080703 雨&星巴克的菜单
- 如何求一个数的因数 c语言代码,【代码】求一个数的因数和、求优化、顺便也供新人参考算法...
- java 抽象类,接口,object类详解
- 例子:倒计时按钮可用
- Windows 软件授权管理工具检验Windows7激活状态和许可证详细信息
- DJANGO MODELS通过DATETIMEFIELD保存到MYSQL的时间的时区问题
- spring整合mybatis接口无法注入问题
- 微软发布8月安全公告 包含13个补丁修补22个漏洞
- Springboot 整合 Netty 实战(附源码)
- c语言第三章作业题答案,c语言第三章简单练习题及答案.doc
- jQuery学习之---效果
- 寻找电路布线最短路径算法BFS
- ubuntu 设置静态ip,但显示scope global secondary ens33
- java csrf 跨域_使用javascript跨域请求与CSRF
- 计算机的所有符号,电脑上怎么打各种符号
- 收集的英语资源(不断更新)
- WPF基础到企业应用系列8——依赖属性之“风云再起”
- 什么是DBMS,什么是数据库?
- 1425:【例题4】加工生产调度
热门文章
- django20:BBS网页设计/注册功能/验证码代码
- PHP 使用 OSS 批量删除图片
- 【ArcGIS微课1000例】0021:ArcToolBox工具箱功能与环境概述
- 地图投影系列介绍(一)----地球空间模型
- Android studio之NDK integration is deprecated in the current plugin解决办法
- Android之android.graphics.drawable.Drawable.Callback回调接口
- java3n 1_1005 继续(3n+1)猜想(JAVA)
- php json error,PHP 7.3 中的 JSON 错误处理
- 2个网页跳来跳去_好人网页同步器,使用教程
- 交友软件上的两种网友类型......