sql

var sql = "select max(version) as version, id, " +" tenant,type, name, format, default_value, multi_line, max_length, min_length, formula " +" from imcs_field_string_definitions " +" where id = 11 group by id"

报错

Error 1055: Expression #3 of SELECT list is not in GROUP BY clause and contains nonaggregated column ‘imcs.imcs_field_string_definitions.tenant’ which is not functionally dependent on columns in GROUP BY clause; this is incompatible with sql_mode=only_full_group_by

原因:

每次重启main的时候会重新初始化数据库设置,
每次重启main后需要初始化,执行:

select @@sql_mode;
SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''));

优化后的代码

// leimin, 批量查询最大版本的定义数据
func MaxVersionDefinition(db *gorm.DB, ids []string, tenant string) (maxModels []FieldStringDefinition, err error) {db.Exec("SET sql_mode=(SELECT REPLACE(@@sql_mode,'ONLY_FULL_GROUP_BY',''))")var sql = " select max(version) as version, id, " +" tenant,type, name, format, default_value, multi_line, max_length, min_length, formula " +" from imcs_field_string_definitions " +" where 1=1 ${ids} and tenant= ${tenant} " +" group by id "idsStr, err := concatString(ids)sql = strings.Replace(sql, "${ids}", idsStr, -1)sql = strings.Replace(sql, "${tenant}", tenant, -1)db = db.Raw(sql)db = db.Scan(&maxModels)return maxModels, db.Error
}

go 使用 mysql goup by报错相关推荐

  1. mysql安装教程博音网_RTSP视频平台EasyNVR使用mysql数据源启动报错unknow drivermysql优化...

    原标题:RTSP视频平台EasyNVR使用mysql数据源启动报错unknow driver"mysql"优化 我们上一篇讲了TSINGSEE青犀视频开发的视频平台默认都是使用的s ...

  2. mysql表恢复报错binlog_mysql数据恢复,利用binlog2sql快速闪回

    一.环境设置 1.mysql配置中首先要开启binlog,如没开启,在my.conf 下配置如下参数: server-id = 1 log_bin = /var/log/mysql/mysql-bin ...

  3. mysql source导入报错ERROR 1366的解决方法

    mysql source导入报错ERROR 1366的解决方法 参考文章: (1)mysql source导入报错ERROR 1366的解决方法 (2)https://www.cnblogs.com/ ...

  4. mysql group by 报错 ,only_full_group_by 三种解决方案

    mysql group by 报错 ,only_full_group_by 三种解决方案 参考文章: (1)mysql group by 报错 ,only_full_group_by 三种解决方案 ( ...

  5. Linux下MySql插入汉字报错解决(/etc/my.cnf不存在)

    2019独角兽企业重金招聘Python工程师标准>>> Linux下MySql插入汉字报错解决(/etc/my.cnf不存在) 看了很多帖子,大多数是说修改my.cnf,如 http ...

  6. mysql创建用户报错ERROR 1290

    使用navicat 给mysql创建用户报错ERROR 1290 (HY000): The MySQL server is running with the --secure-file-priv op ...

  7. mysql分页查询报错,及解决

    mysql分页查询报错: 前提: 1.每页1000条数据 2.查到57页的时候,就报错了 以下是错误信息: org.springframework.jdbc.UncategorizedSQLExcep ...

  8. mysql登录报错error1045,mysql创建登录报错ERROR1045(28000)

    .如下图(第四个): 而本人创建的用户为: Mysql> grant  all  on  itcase.*  to  'test'@'%'  identified  by  '123456'; ...

  9. MySQL 添加字段报错1005 Can‘t create table ‘#sql-12d23_4bd‘ (errno: 28)

    问题描述:MySQL 添加字段报错1005 Can't create table '#sql-12d23_4bd' (errno: 28) 解决方法: 1.可以考虑一下是否是硬盘内存已满 2.如果上述 ...

最新文章

  1. 平面广告设计和Web设计的差别
  2. rsync同步(2010年写作)
  3. 查找算法:二分查找、顺序查找
  4. 长时间整理的xhtml网页设计规范
  5. HTML/CSS——网页SVG ICON(小图标)解决方案
  6. python iocp_记对协程增加IOCP支持时候踩过的一些坑
  7. 缓慢的http拒绝服务攻击 tomcat_常见的网络攻击类型
  8. php数组变量太大后台返回500,PHP max_input_var设为了1000导致post数组太多时无法接受后面的参数值...
  9. 据说这篇总结覆盖了一般Python开发面试中可能会问到的大部分问题
  10. 在CentOS6虚拟机上安装VirtualBox增强功能
  11. php cookie 加密解密,php实现cookie加密的方法
  12. python 公司年会抽奖_Python语言学习之用Python写公司年会抽奖程序
  13. [系列教程] Discuz模板的制作方法
  14. hashMap 和linkedHashMap
  15. 华为防火墙笔记-网络地址转化NAT
  16. 腾讯技术跨越2019
  17. 好心情:吃精神科药物药不见效?你可能忽视了血药浓度
  18. 有关chromium浏览器 ios 读证书 验证证书 (注没有找到方法),在这里做一下笔记
  19. 《高等数学A》课堂笔记——高分必过
  20. 小白成长记第2期:简单易操的YouTube美金项目,get!

热门文章

  1. 三顾人才和拉勾网哪家好
  2. 美能达266i显示服务器iws,办公智能i时代 从柯尼卡美能达bizhub 226i开始
  3. 海尔电视android怎么设置,海尔电视怎么连接手机 海尔电视连接手机步骤
  4. 痞子衡嵌入式:导致串行NOR Flash在i.MXRT下无法正常下载/启动的常见因素之QE bit...
  5. ERROR:function cannot execute on a QE slice/Greenplum 错误解决
  6. 计算机科学技术高等数学,计算机科学与技术本科-入学测试高等数学测试题(第1套).doc...
  7. 关于/dev/null 和 /dev/zero文件详解以及误删/dev/null和/dev/zero的解决方法和利用/dev/zero进行磁盘IO测试方法
  8. 关于任务调度执行不成功的调试
  9. 中国电信将取消长途漫游费 大规模布局物联网
  10. vue 高德地图 不同区域显示不同颜色_联测科技丨高德地图不仅仅是拿来导航的...