达梦数据库兼容mysql GROUP BY查询的设置方式

 更新时间:2025年11月29日 11:56:23   作者:超级八阿哥  
作为一名数据库管理员或开发者,当项目需要从MySQL迁移到达梦数据库时,最关心的莫过于兼容性问题,这篇文章主要介绍了达梦数据库兼容mysql GROUP BY查询的设置方式,需要的朋友可以参考下

如果希望仅通过配置达梦数据库而不修改代码来解决 “不是 GROUP BY 表达式” 的错误,可以通过调整达梦数据库的 SQL
模式兼容参数,使其兼容 MySQL 等数据库的宽松分组查询规则(即允许 SELECT 中包含 GROUP BY 中未出现的非聚合字段)。

Mysql中5.7之后的GROUP BY查询,需要改sql_mode的值,这里不做阐述,网上很多教程。
这里主要针对达梦数据库的设置方式。

1.登录达梦数据库(使用 SYSDBA 权限):

/opt/dmdbms/bin/disql SYSDBA/你的密码@localhost:5236

2.修改数据库参数 COMPATIBLE_MODE

达梦的 COMPATIBLE_MODE 参数用于设置数据库兼容模式,默认为 0(达梦模式),可改为 4(兼容 MySQL 模式),该模式下会放宽 GROUP BY 的校验规则:

-- 查看当前兼容模式(默认0)
SELECT SF_GET_PARA_VALUE(2, 'COMPATIBLE_MODE');

-- 修改为兼容MySQL模式(需要重启数据库生效)
SP_SET_PARA_VALUE(2, 'COMPATIBLE_MODE', 4);
3.重启达梦数据库服务(使参数生效):
# 切换到root用户
su - root

# 重启服务(假设服务名为DmServiceDMSERVER)
systemctl restart DmServiceDMSERVER

附:达梦数据库group by分组

梦数据库类似Oracle数据库分组的时候, 查询的语句每个字段都要添加到分组里面,如果不添加的会报错

查询语句里加入下图, 因为星号被屏蔽了(仅供参考/+ GROUP_OPT_FLAG(1)/)就可以对某一个字段分组了 

总结

到此这篇关于达梦数据库兼容mysql GROUP BY查询设置方式的文章就介绍到这了,更多相关达梦数据库兼容mysql GROUP BY查询内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • mysql实现向下递归与向上递归方式

    mysql实现向下递归与向上递归方式

    本文介绍了FIND_IN_SET函数的使用,可以替代SQL的IN查询多个节点数据,也可通过=关联查询单个节点,此外,还提到了向下和向上递归查询的方法
    2026-04-04
  • mysql数据库中的索引类型和原理解读

    mysql数据库中的索引类型和原理解读

    这篇文章主要介绍了mysql数据库中的索引类型和原理,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-02-02
  • sysbench对mysql压力测试的详细教程

    sysbench对mysql压力测试的详细教程

    众所周知sysbench是一个模块化的、跨平台、多线程基准测试工具,主要用于评估测试各种不同系统参数下的数据库负载情况。下面这篇文章就来详细介绍sysbench如何对mysql进行压力测试,有需要的可以一起来看看。
    2016-09-09
  • 实例讲解MySQL中乐观锁和悲观锁

    实例讲解MySQL中乐观锁和悲观锁

    在本篇文章里我们通过实例总结了关于MySQL中乐观锁和悲观锁区别的知识点,有兴趣的读者们学习下。
    2019-02-02
  • MySQL安装后不能用是什么情况该如何解决

    MySQL安装后不能用是什么情况该如何解决

    之前安装过MYSQL好像不用手动启动服务,具体也忘记了,但我上回给公司安装的那个是要手动安装服务的,如果mysql刚刚安装不能用,可能是服务没有安装
    2014-03-03
  • MySQL分库分表的实践示例

    MySQL分库分表的实践示例

    MySQL分库分表适用于数据量大或并发压力高的场景,核心技术包括水平/垂直分片和分库,需应对分布式事务、跨库查询等挑战,通过中间件和解决方案实现,最佳实践为合理策略、备份恢复、监控调优及预留扩展,感兴趣的朋友跟随小编一起看看吧
    2025-08-08
  • mysql 基本操作

    mysql 基本操作

    早打算写些关于数据库操作方面的知识了,现在终于完成了第一篇,以下记录了关于mysql操作方面的基础知识
    2012-08-08
  • mysql 获取规定时间段内的统计数据

    mysql 获取规定时间段内的统计数据

    这篇文章主要介绍了mysql 获取规定时间段内的统计数据的相关资料,需要的朋友可以参考下
    2017-05-05
  • SQL UNION运算符及其应用场景深入探究

    SQL UNION运算符及其应用场景深入探究

    这篇文章主要为大家介绍了SQL UNION运算符及其应用场景示例深入探究,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • mysql同步复制搭建方法指南详细步骤

    mysql同步复制搭建方法指南详细步骤

    MySQL数据同步主要有三种方式: 1.利用MySQL自身的数据库同步功能 2.利用MySQL数据库的特性(数据库存在固顶目录,并且以文件形式存储),进行数据库目录同步以达到数据同步目的 3.利用专用的MySQL数据库同步软件
    2008-04-04

最新评论