mysql使用游标(优化最后一行重复的)

2023-05-16

纯粹是业务需要,学习记录一下使用游标的过程;

我们先创建一张表;

假设att_test是我们的表名称,其中有两个字段,我插入了一部分数据;

 

我们学习下,如何在遍历每一行的条件下,删除当前行,并插入新的行;

 


-- 测试游标
DELIMITER $$
DROP PROCEDURE IF EXISTS repair_leader_permissions $$
CREATE PROCEDURE repair_leader_permissions()
BEGIN
     DECLARE result varchar(128) ;#循环中当前变量1
     DECLARE result1 varchar(128);#循环中当前变量2
     DECLARE _no int; 
     DECLARE cur_1 CURSOR FOR SELECT id,value FROM att_test; #游标初始化(多字段)!!!
     DECLARE CONTINUE HANDLER FOR NOT FOUND SET _no=1; #当数据预览到最后一条时,启动更新
		 
		 SET _no=0; #初始化
     OPEN cur_1; #使用游标
           REPEAT 
                 fetch cur_1 into result,result1; #多字段读取游标!!!字段顺序如上哦
								 		IF NOT _no THEN
										
										  #清理数据
											DELETE FROM att_test WHERE id =result;
											
											#插入数据
											INSERT att_test 
											 	(SELECT result,result1);
												
											#过程输出
											SELECT result,result1;
											
								    END IF;
           UNTIL _no=1 END REPEAT;
     CLOSE cur_1; #
END$$

DELIMITER ;

call repair_leader_permissions(); -- 调用

其实,这里是我个人简单的记录。有问题可以评论,我们共同进步

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql使用游标(优化最后一行重复的) 的相关文章

  • MySQL PHP邮政编码比较具体距离

    我试图找出比较一个邮政编码 用户提供的 和一大堆其他邮政编码 现在大约有 200 个邮政编码 之间的距离的最有效方法 相对于加载时间 但它会随着时间的推移而增加 我不需要任何精确的东西 只是在球场上 我下载了整个美国的邮政编码 csv 文件
  • Apache、PHP 和 MySQL 可移植吗?

    我可以在外部硬盘上运行 Apache PHP 和 MySQL 吗 我需要这个 因为我在不同的地方工作 计算机 有时我没有安装和配置所有使用的应用程序 当然可以 XAMPP http www apachefriends org en xamp
  • 将古吉拉特语文本插入 MySQL 表会产生垃圾字符和不可读的文本

    我有三个 MySQL 表 我正在向其中插入古吉拉特语内容 当我插入两个表时 它们插入得很好并且可读 但在一个表中 它显示垃圾字符 不可读的文本 我怎样才能解决这个问题 MySQL 有每个表的字符集设置 http dev mysql com
  • MySQL Connector C/C API - 使用特殊字符进行查询

    我是一个 C 程序 我有一个接受域名参数的函数 void db domains query char name 使用 mysql query 我测试数据库中是否存在域名 如果不是这种情况 我插入新域名 char query 400 spri
  • 免费 PHP 登录库 [关闭]

    就目前情况而言 这个问题不太适合我们的问答形式 我们希望答案得到事实 参考资料或专业知识的支持 但这个问题可能会引发辩论 争论 民意调查或扩展讨论 如果您觉得这个问题可以改进并可能重新开放 访问帮助中心 help reopen questi
  • 在服务器上找不到本地主机或 phpMyAdmin:如何修复?

    我按照安装说明进行操作PHP MySQL and PHPMyAdmin 但是当我尝试访问时http localhost phpmyadmin 我收到此错误 未找到 在此找不到请求的 URL phpmyadmin 服务器 然后我尝试访问loc
  • PDO PHP 连接,致命错误

    我的连接类 firstcode php class DB functions public db function construct try db new PDO mysql localhost dbname xxx charset ut
  • Java JDBC:更改表

    我希望对此表进行以下修改 添加 状态列 varchar 20 日期列 时间戳 我不确定该怎么做 String createTable Create table aircraft aircraftNumber int airLineCompa
  • SQL不允许表中有重复记录

    如何使其不添加重复项 我想让它通过 ID 之外的所有其他列进行检查 我希望这个无效 ID col1 col2 col3 1 first middle last ID col1 col2 col3 2 first middle last 我希
  • 如何修改现有表以添加时区

    我有一个包含 500 多个表的大型应用程序 我必须将应用程序转换为时区感知 当前应用程序使用new java util Date GETDATE 与服务器的时区 即没有任何时区支持 我已将这项任务分为几个步骤 以便于开发 我确定的第一个步骤
  • 在mysql中的单个查询中更新多个表

    我有三个查询 我想要一个 这是我的查询 UPDATE tab1 SET a WHERE id 3 UPDATE tab2 SET b WHERE id 9 UPDATE tab3 SET c WHERE id 5 您可以尝试下面的代码 UP
  • MySql - 复制监控工具[关闭]

    Closed 此问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我有一个主 从 MySql 复制 我正在寻找一个允许我监视复制的工具 查看它没有错误 检查滞后等 我更喜
  • 如果没有找到值,如何让 MySQL 中的 SUM 函数返回“0”?

    假设我在 MySQL 中有一个简单的函数 SELECT SUM Column 1 FROM Table WHERE Column 2 Test 如果没有条目Column 2 包含文本 Test 然后该函数返回NULL 而我希望它返回 0 我
  • MySQL 和 Hibernate 之间的主键自增由谁负责?

    MySQL CREATE TABLE role id role INT 11 unsigned NOT NULL AUTO INCREMENT PRIMARY KEY id role AUTO INCREMENT 1 休眠 Entity p
  • MySql 5.7 ORDER BY 子句不在 GROUP BY 子句中并且包含非聚合列

    我试图在不禁用 my ini 中的 only full group by 的情况下弄清楚 这是我的查询 SELECT p title COUNT t qty AS total FROM payments t LEFT JOIN produc
  • PHP 和 MySQL - 高效处理多个一对多关系

    我正在寻求一些有关使用 MySQL 和 PHP 检索和显示数据的最佳方法的建议 我有 3 个表 所有一对多关系如下 Each SCHEDULE有很多覆盖每个覆盖都有很多地点 我想检索这些数据 以便它可以全部显示在单个 PHP 页面上 例如列
  • 如何在 MySQL 中测试 Select for Update

    我正在表演SELECT FOR UPDATE或 InnoDB 表的行级锁定 我的目的是只有一个请求可以读取同一行 因此 如果两个用户同时请求相同的数据 其中只有一个人获取数据 即第一个触发查询的人 但是我如何测试锁定是否已放置 因为我正在通
  • 如何从批量数据中的mysql列中删除所有非数字字符

    我想从列中删除所有非数字字符 我的数据库中有大量数据 目前我正在使用以下链接中描述的方法 http venerableagents wordpress com 2011 01 29 mysql numeric functions http
  • 让登录更安全

    我已使用此代码进行管理员登录 仅当用户输入正确的用户名和密码时才应打开loginhome php 但后来我意识到这根本不安全 任何人都可以直接访问 mywebsite loginhome php 而无需登录 注销后 可以使用后退按钮打开 l
  • ORDER BY 字段内的 MySQL 子查询。 (没有内连接)

    有很多与此相关的问题 但都具有使用内部联接的相同答案 这 我认为 在这里是不可能的 如果我错了请告诉我 我现在正在做的是调用两个不同的 mysql 查询来获取结果 它工作完美 db gt query SELECT FROM meta WHE

随机推荐

  • 设计模式-六大原则/单例模式

    设计模式 概念 xff1a 是一套被反复使用 多数人知晓的 经过分类编目的 代码设计经验的总结 作用 xff1a 为了可重用代码 让代码更容易被他人理解 保证代码可靠性 程序的重用性 JDK Spring等源码中许多地方用到了设计模式 设计
  • 设计模式-工厂模式/代理模式

    工厂模式 创建对象时不会对客户端暴露创建逻辑 xff0c 并且通过使用一个共同的接口来指向新创建的对象 xff0c 实现创建者和调用者分离 xff0c 工厂模式分为简单工厂 工厂方法 抽象工厂 xff0c Spring中的IOC容器创建be
  • WSL2+VcXsrv 打开图形窗口实现可视化

    前些天有个朋友拜托我帮忙看看 老师让配置的 Cygwin 安装 gnuplot 用 XLaunch 做图形界面 始终画不出图来 这个问题我研一的时候也遇到过 走了许多弯路 所以在电脑上一阵鼓捣 现在做一个如下记录 Cygwin 43 XLa
  • gitlab 安装/卸载/备份/迁移/汉化/重置root密码 全套教程

    服务器环境 centos7 4 gitlab版本 gitlab span class token operator span ce span class token operator span 11 span class token pun
  • bash: line 5: bgzip: command not found

    报错信息 xff1a bash line 5 bgzip command not found 解决方式 xff1a conda install tabix
  • linux之chgrp命令

    chgrp 命令更改 目录或文件所属的组 chgrp R 目录 或 文件 R xff1a 递归式改变指定目录及目录下所有文件和子目录 chgrp eg chgrp group2 file2 将file2的属组更改为group2 以空格分开
  • PageHelper limit自定义位置

    package com sgcc base common rest model import com github pagehelper Page import com github pagehelper dialect helper My
  • Ubuntu20.04 执行nvidia-smi命令,显示不能连接到显卡驱动

    错误 xff1a NVIDIA SMI has failed because it couldn t communicate with the NVIDIA driver 解决这个问题的一般方法 xff1a nvidia smi 报错 xf
  • nginx安装windows服务

    进入nginx安装目录列如 D code nginx 1 6 3 将WinSW NET4 exe复制到 nginx安装目录下 将WinSW NET4 exe重名为install service exe xff0c 并创建立install s
  • 贝塞尔曲线 弯曲动画ios_用贝塞尔曲线弯曲

    贝塞尔曲线 弯曲动画ios by Nash Vail 由Nash Vail 用贝塞尔曲线弯曲 Nerding Out With Bezier Curves Since the past few days I have been trying
  • MySQL随机获取10条数据-多种方式

    MySQL随机获取10条数据 多种方式 测试表有 254 万条数据 xff0c 各个SQL的执行效率如下 方式一 最简单 xff0c 但是效率最低 执行时间 xff1a 9 845s SELECT FROM 96 table 96 ORDE
  • ESXI克隆虚拟主机

    目录 一 通过命令克隆主机 二 通过网页端克隆主机 一 通过命令克隆主机 1 启用esxi的ssh 2 ssh登录esxi 3 找到虚拟机所在目录 4 建立新虚拟机目录 5 拷贝vmx文件 6 克隆vmdk 7 修改vmx文件 8 esxi
  • SqlServer 查询JSON 数据

    https www cnblogs com whitebai p 13614024 html
  • 一篇文章带你发中文核心期刊《计算机科学》

    中文核心期刊 计算机科学 发论文过程分享 目录 中文核心期刊 计算机科学 发论文过程分享 1 写论文 xff0c 找杂志发表 2 寻找投稿的杂志社 xff0c 修改论文 3 论文审核流程 4 关于怎么联系杂志的编辑部 投稿的大致过程如下 x
  • unity 安装踩坑

    此贴unity安装版本为2019 1 9f1 xff0c 基本项目都是向下兼容 xff01 xff01 xff01 话不多说直接上干货 1 卸载unity hub 2 卸载unity 3 删除C ProgramData Unity文件夹 4
  • Intellij IDEA 部署Web项目后运行出现HTTP Status 404(找不到对应的路径文件,不是无法访问此网站)

    之前抽空搭建了一个java的环境做了个项目 xff0c 结果重装系统以后 xff0c 重新部署项目能够运行的时候发现了项目调试404 xff08 找不到实际的页面 xff0c 后来csdn查了一下很常见的问题 xff09 给大家推荐一下这个
  • VS 2019 使用Node.js 《环境安装》

    Vs2019安装node js 说明 1 安装node js工具 2 安装node js https nodejs org en download 3 查看环境变量是否在安装过程中自动附加 4 安装完成后重启电脑 5 运行cmd 管理员运行
  • 如何实现HTML5 Notification 桌面推送(无需域名)

    之前涉及到要做B S架构的 浏览器windows桌面的消息提醒 xff0c 然后在网上找到了Notification的消息推送 发现这类的文章挺少的 xff0c 故此写下来包装了一下方法记录一下以后用 xff0c 参考知乎大佬的文章 xff
  • .net Core MongoDB保姆级环境安装

    用户需求 xff1a 涉及多json类型的数据存储 xff0c 因redis较nosql没那么好用 xff0c 实际操作了一波环境安装 xff0c 目前我还是没有配置环境变量的 MongoDB的下载 61 官网链接 https www mo
  • mysql使用游标(优化最后一行重复的)

    纯粹是业务需要 xff0c 学习记录一下使用游标的过程 xff1b 我们先创建一张表 xff1b 假设att test是我们的表名称 xff0c 其中有两个字段 xff0c 我插入了一部分数据 xff1b 我们学习下 xff0c 如何在遍历