mysql,oracle使用区别

news2024/11/19 4:33:27

1.1concat,concat_ws,group_concat

        配置方式

                临时:SET SESSION group_concat_max_len = 10240;

                永久:配置文件my.ini增加group_concat_max_len=10240

                查看配置:show variables like 'group_concat_max_len';

 2.1oracle-start with

        mysql没有start with操作,需要自己封装函数

        参考

drop function if exists get_child_list_virtual_house;
create function get_child_list_virtual_house(in_id varchar(10)) returns TEXT
begin
     declare ids TEXT  default '';
     declare tempids TEXT;
     set tempids = in_id;
     while tempids is not null do
      set ids = CONCAT_WS(',', ids, tempids);
    select GROUP_CONCAT(id) into tempids from T_VIRTUAL_HOUSE where FIND_IN_SET(pid, tempids)>0;
    end while;
    return ids;
end;

注意:

1.mysql的函数不允许动态sql,因此无法使用入参作为表名,只能把表名称写死

2.返回值ids,中间量tempids的类型要尽可能的大一些,否则可能超长报错

SQL 错误 [1406] [22001]: Data truncation: Data too long for column 'tempids' at row 1

3.group_concat()存在长度限制,默认1024,如果不修改的话,可能导致结果数据缺失

设置方式 SET SESSION group_concat_max_len = 6000;

这种设置在mysql重启后失效,永久生效需要到配置文件增加配置

group_concat_max_len = 102400

查看当前设置的长度

show variables like 'group_concat_max_len';

结论:显然,我们应当尽量避免这样的操作,如果是mysql8以上的版本,可以使用WITH RECURSIVE来实现树形查询,当然也可以根据业务需求的其他字段曲线救国,比如通过树形关系存储表的fullname,fullpath这种类似的字段模糊搜索来实现查询所有子节点的操作

3.1模糊查询,查询语句中的拼接

mysql

like '%'#{keyName}'%'

oracle

like '%'||#{keyName}||'%'

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/543260.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

【C++】22.单例模式+类型转换

1.单例模式 1定义 之前已经学过一些设计模式 迭代器模式 -- 基于面向对象三大特性之一的 封装设计出来的 用一个迭代器类封装以后 不暴露容器结构的情况下 统一的方式访问修改容器中的数据 适配器模式 -- 体现的是一种复用 还有一些常见的设计模式如:工厂模式 装饰器模式…

定义制造业操作(定义 MES/MOM 系统)

制造业操作包含众多工厂级活动,涉及设备(定义、使用、时间表和维护)、材料(识别、属性、位置和状态)、人员(资格、可用性和时间表),以及这些资源与包含其信息碎片的众多系统之间的互…

BFT 最前线 | 腾讯发布Q1季报;超2000伙伴测试阿里云通义千问;黄仁勋:芯片是NVIDIA加速与AI计算的的“理想应用”

原创 | 文 BFT机器人 AI视界 TECHNOLOGY NEWS 01 阿里云:超2000伙伴测试通义千问 行业专属大模型将成趋势 2023阿里云常州峰会上,阿里云智能中国区总裁黄海清透露:目前通义千问大模型已有超2000个合作伙伴进行测试。未来大模型面向各行各…

微信视频怎么录屏?2个方法教您轻松录制!

案例:怎么录制微信视频通话? 【我在和家人或者朋友打微信视频电话时,总是会发生一些有趣的事情,我想把这些美好的画面通过录屏记录下来。但我不知道如何录制微信视频通话?有没有大佬支个招!】 微信视频通…

macOS Big Sur 11.7.7 (20G1345) 正式版 ISO、PKG、DMG、IPSW 下载

本站下载的 macOS 软件包,既可以拖拽到 Applications(应用程序)下直接安装,也可以制作启动 U 盘安装,或者在虚拟机中启动安装。另外也支持在 Windows 和 Linux 中创建可引导介质。 2023 年 5 月 18 日(北京…

Boost开发指南-1.2progress_timer

progress_timer progress_timer也是一个计时器,它继承自timer,会在析构时自动输出时间,省去了timer手动调用elapsed()的工作,是一个用于自动计时相当方便的小工具。 progress_timer位于名字空间boost,为了使用progre…

浅谈PMO对组织战略的支持︱美团骑行事业部项目管理中心负责人边国华

美团骑行事业部项目管理中心负责人边国华先生受邀为由PMO评论主办的2023第十二届中国PMO大会演讲嘉宾,演讲议题:浅谈PMO对组织战略的支持。大会将于6月17-18日在北京举办,更多内容请浏览会议日程 议题内容简要: 战略是组织运行的…

Mysql【基础篇】—— mysql基础知识

Mysql【基础篇】—— mysql基础知识 ~😎 前言🙌关系型数据库SQl 总结撒花💞 😎博客昵称:博客小梦 😊最喜欢的座右铭:全神贯注的上吧!!! 😊作者简介…

CPU、内存使用率告警问题处理

可能原因 CPU 或内存使用率过高,容易引起服务响应速度变慢、服务器登录不上等问题。而引起 CPU 或内存使用率过高可能由硬件、系统进程、业务进程或者木马病毒等因素所致。 排查思路 定位消耗 CPU 或内存的具体进程。对 CPU 或内存占用率高的进程进行分析。 如果是…

Mac下webstorm安装运行ant desgin pro踩坑记录

最近在跟做鱼皮大佬的《用户中心》项目练手,由于是2022年的项目而且不是用Mac做的,遇到了很多问题,在此记录一下。 1.安装node.js版本过高,目前官网最新长期支持版本是18.16.0 LTS。视频中安装的是16.14.0 LTS,如果遇…

文档处理容易“翻车”,来看看CCIG上的大咖怎么说

一、前言 哪怕在互联网时代高速发展的今天,文档依然是人们在日常生活、工作中产生的信息的重要载体。 学生的作业、开具的发票、医生的医嘱、合同、简历、金融票据等都是通过文档来呈现的,它在我们的生活中随处可见。 现在我们为了更高效、安全的开展业务…

金铲铲之战8.5版本

金币篇 1、如果有强大的经济基础,那么这个游戏赢下来回变的超级简单,因此获取更多的金币是吃鸡最基础也是最关键的保障 说明:金币可以用来升级、刷新商店和购买人口 金币来源: 1、基础金币:根据野怪波次给予金币奖励…

Spread.NET 16.1.0 Winform Crack-new

添加对将表单控件添加到工作表的支持。 2023 年 5 月 18 日 - 16:24新版本 特征 窗体 支持表单控件- 添加了对将表单控件添加到工作表的支持。表单控件是可以插入到工作表中以处理数据并按指定处理数据的对象。可以轻松引用表单控件并与单元格数据进行交互。有 8 种不同类型的表…

第三十五章 多个组件状态数据共享

之前,我们的求和案例只是一个组件,属于是自己玩自己,接下来我们通过多个组件,通过redux实现它们之间的数据互通。 步骤1:更改项目目录结构 src |--containers | |--Count |--redux | |--actions | |--count.js | |-…

内网渗透(七十八)之域权限维持之ACL滥用(下)

ACL滥用(下) 7、GenericAll 权限 应用于组 再来看看GenericAll 权限 应用于组如何进行权限维持。 由于用户hack是普通的域用户,因此他没有往Domain Admins 组添加用户的权限,如图所示,以用户hack 身份往Domain Admins 组中添加用户,可以看到,添加用户失败。 现在我们…

目标检测,将voc格式转化为coco格式详细过程

在目标检测方法研究中,数据集的格式至关重要,为了减小模型的训练时长,需要现在小数据集进行模型研究,从而需要将VOC数据集转化为coco格式。下面一步一步来看: 1. 下载VOC数据集 Pascal VOC,即Pattern Ana…

windows2003系统SSL证书单站点部署https

本文将讲解,在windows 2003操作系统下,IIS 6 环境的服务器ssl证书安装教程。 安装前,请准备好SSL证书,没有的话,可以点这里申请SSL证书>>> 部署前请退出服务器内安装的杀毒软件(360、金山、安全…

Linux 安装Qt6 教程及错误解决

在Linux环境,通常为Ubuntu,安装Qt开发环境,与Windows安装相比,还是稍显繁琐,需要多做几个步骤。 这里的Ubuntu版本采用的是ubuntu-22.04.2-desktop-amd64,所以,比旧版本会少很多坑,…

链表题目强化练

目录 前言 两数相加 删除链表的倒数第N个结点 环形链表 相交链表 合并 K 个升序链表 复制带随机指针的链表 前言 初学者在做链表的题目时有一个特点,就是每看一个链表的题都觉得很简单,但真正到了扣代码的时候不是这卡一块就是那卡一块。这是因为…

No module named PyQt5

背景:将Python文件转成APP,在编辑器中运行没有问题,一使用pyinstaller转成app就报错了 尝试了各种网上的解法都无效,最后是GPT4解决的 Q: 我遇到一个奇怪的问题,我在python文件中,引用了pyqt5…