Mysql如何查询不需要Group by的字段

ops/2024/9/25 23:11:09/

问题背景

        在实际业务场景中,我们有时会对某些字段进行分组统计,并且需要查出多余字段展示。比方说根据机构id统计每个机构下有多少部门,字段展示机构名称、部门数量、机构id。

        这时会提示查询的字段必须得在group by子句中,否则无法执行。

解决方案

  • 使用any_value,屏蔽严格模式(Oracle、MySql都可)。

  • 使用max()或者min函数(Oracle、MySql都可)。

  • 修改sql_mode或修改配置文件(仅MySql)。

        先查看@@sql_mode模式,看是否开启了only_full_group_by 严格模式。

        本人本地的Mysql未开启,如果开启的话,而你又想屏蔽严格模式,则执行下列语句即可。

-- 屏蔽严格模式
set @@sql_mode = 'STRICT_TRANS_TABLES,NO_ENGINE_SUBSTITUTION';
-- 查询@@sql_mode
select @@sql_mode

http://www.ppmy.cn/ops/12787.html

相关文章

接口测试和Mock学习路线(中)

1.什么是 swagger Swagger 是一个用于生成、描述和调用 RESTful 接口的 WEB 服务。 通俗的来讲,Swagger 就是将项目中所有想要暴露的接口展现在页面上,并且可以进行接口调用和测试的服务。 现在大部分的项目都使用了 swagger,因为这样后端…

146. LRU 缓存

请你设计并实现一个满足 LRU (最近最少使用) 缓存约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 …

microk8s拉取pause镜像卡住

前几天嫌服务器上镜像太多占空间,全部删掉了,今天看到 microk8s 更新了 1.30 版本,果断更新,结果集群跑不起来了。 先通过 microk8s.kubectl get pods --all-namespaces 命令看看 pod 状态。 如上图可以看到,所有的业…

如何快速学习盲打键盘的指法

学习盲打键盘的指法需要一定的时间和练习,但是以下几个方法可以帮助你加快学习的速度: 掌握正确的手位:了解标准的键盘布局以及手指应该放置的位置是学习盲打的第一步。在QWERTY键盘上,你的左手应该放在ASDF键上,右手应…

计算机中的寻址方式

在计算机科学中,**寻址(Addressing)**是指计算机系统中用于定位和访问数据存储位置的一种机制。数据可能存储在内存、硬盘或其他形式的数据存储设备中。寻址方式影响着处理器如何从内存中读取数据或向内存写入数据,也直接关联到程…

css层叠性,继承性,优先级

前言 本文概要:讲述css的三大特性,层叠,继承和优先级。 层叠性 描述:我们试想以下这种情况:我们定义了同一个选择器,但是定义的属性不同。属性有相同的也有不同的,那么最后我们这个页面会听谁的…

如何在ubuntu上使用clash

下载CLASH软件 修改配置文件 解压之后,将.env文件中的URL改为自己订阅的URL,然后再执行start.sh脚本 最后按照提示,将clash.sh添加到环境变量 如何修改端口 在start.sh中更改 祝大家在ubuntu上玩得开心

开发区块链DApp应用,引领数字经济新潮流

随着区块链技术的飞速发展,分布式应用(DApp)正成为数字经济中的一股强劲力量。DApp以其去中心化、透明公正的特点,为用户带来了全新的数字体验,开创了数字经济的新潮流。作为一家专业的区块链DApp应用开发公司&#xf…