[个人笔记] SQL笔记-While语法

这篇具有很好参考价值的文章主要介绍了[个人笔记] SQL笔记-While语法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

SQL - 运维篇


SQL笔记-While语法

MySQL while语法

### MySQL while语法
DELIMITER //
DROP PROCEDURE IF EXISTS Pgm_while_001;
CREATE PROCEDURE Pgm_while_001() BEGIN
	DECLARE flag INT DEFAULT 0;
	DECLARE tmphost VARCHAR(40);
	DECLARE num int default 0;
	DECLARE hostlist CURSOR FOR SELECT HostName FROM `sql_table1` WHERE IPv4Address != '';
	DECLARE CONTINUE HANDLER FOR NOT FOUND SET flag=1;
	OPEN hostlist;
	FETCH hostlist INTO tmphost;
	WHILE flag <> 1 DO
		SET @newipv4=(SELECT IPv4Address FROM `sql_table1` WHERE IPv4Address != '' AND HostName = tmphost LIMIT 0,1);
		SET @newmac=(SELECT MacAddress FROM `sql_table1` WHERE MacAddress != '' AND HostName = tmphost LIMIT 0,1);
		UPDATE `sql_table1` SET IPv4Address=@newipv4,MacAddress=@newmac WHERE HostName = tmphost AND IPv4Address = '';
        FETCH hostlist INTO tmphost;
	END WHILE;
	CLOSE hostlist;
END
//
DELIMITER ;

CALL Pgm_while_001();

MSSQL while语法-案例1

### MSSQL While语法
# 案例1
USE sql_database
DECLARE
    @Id uniqueidentifier,
	@UserCode nvarchar(50) ,
	@UserAlias nvarchar(50) ,
	@HostName nvarchar(50) ,
	@IPv4Address nvarchar(50) ,
	@MacAddress nvarchar(50) ,
	@LoginName nvarchar(50) ,
	@DeleteTime datetime
DECLARE id_cursor CURSOR
	FOR (SELECT TOP 1000 Id,UserCode,UserAlias,HostName,IPv4Address,MacAddress,LoginName,DeleteTime FROM sql_table1)
	OPEN id_cursor
	FETCH NEXT FROM id_cursor INTO @Id,@UserCode,@UserAlias,@HostName,@IPv4Address,@MacAddress,@LoginName,@DeleteTime
	WHILE @@FETCH_STATUS=0
	BEGIN
		SET @var001=CONVERT(nvarchar(36),@Id)+'.txt'
		INSERT INTO sql_table2
		VALUES (@Id,@UserCode,@UserAlias,@HostName,@IPv4Address,@MacAddress,@LoginName,@var001,@DeleteTime)
	FETCH NEXT FROM id_cursor INTO @Id,@UserCode,@UserAlias,@HostName,@IPv4Address,@MacAddress,@LoginName,@DeleteTime
END
CLOSE id_cursor
DEALLOCATE id_cursor

MSSQL while语法-案例2

### MSSQL While语法
# 案例2
USE sql_database
DECLARE
	@HostName nvarchar(50)
DECLARE a_cursor CURSOR
	FOR (SELECT HostName FROM sql_table1 WHERE IPv4Address='')
	OPEN a_cursor
	FETCH NEXT FROM a_cursor INTO @HostName
	WHILE @@FETCH_STATUS=0
	BEGIN
		UPDATE sql_table1 SET IPv4Address=(SELECT TOP 1 IPv4Address FROM sql_table1 WHERE HostName=@HostName and IPv4Address <> ''),
		MacAddress=(SELECT TOP 1 MacAddress FROM sql_table1 WHERE HostName=@HostName AND MacAddress <> '') WHERE HostName=@HostName AND IPv4Address = ''
		
	FETCH NEXT FROM a_cursor INTO @HostName
END
CLOSE a_cursor
DEALLOCATE a_cursor


参考来源

文章来源地址https://www.toymoban.com/news/detail-568359.html

到了这里,关于[个人笔记] SQL笔记-While语法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【SQL】SQL语法小结

    相关资料 参考链接1:SQL 语法(超级详细) 参考链接2:史上超强最常用SQL语句大全 SQL练习网站:CSDN、牛客、LeetCode、LintCode SQL相关视频: 推荐书籍: 基础部分 SELECT数据提取 SQL书写规则 where语句使用(包含like、between、in/or、逻辑判断) 表的内敛、外联 分组 子查询 排序和

    2024年01月17日
    浏览(40)
  • SQL(八):SQL基础语法

    employee data (large dataset, includes data and test/verification suite) 什么是空值? 空值不同于零值或包含空格的字段,具有空值的字段是在创建记录时留空的字段 SQL 约束 用于限制可以进入表中的数据类型,约束可以是列级别,也可以是表级别(列级约束应用于一列;表级约束应用于整

    2024年02月13日
    浏览(40)
  • 【SQL】SQL Server基础语法

    安装SQL Server :进入官网下载 Developer 版本即可 SQL Server Management Studio:SSMS 集成开发环境 1. 创建 2. 使用 在进行数据定义、数据查询和数据更新等操作时要先确定 使用的数据库 3. 删除 1. 模式的定义与删除 2. 基本表的定义、修改与删除 🎈定义 常用数据类型如下: ✨修改 📙

    2024年02月06日
    浏览(34)
  • (SQL学习随笔3)SQL语法——SELECT语句

    FROM LIMIT与OFFSET ORDER BY 单值比较 = 等于 不等于 、 = 小于、小于等于 、 = 大于、大于等于 多条件组合 范围筛选 空值匹配 LIKE通配 主要有两种通配符—— \\\'%\\\' 与 \\\'_\\\' ,其中 \\\'%\\\' 代表任意多个字符, \\\'_\\\' 代表单个任意字符 条件分组 数据变换 文本处理 MySQL PostgreSQL 在PostgreS

    2023年04月27日
    浏览(42)
  • 【SQL】一文带你掌握SQL基础语法

    英文:Structured Query Language,简称 SQL 结构化查询语言,一门操作关系型数据库的编程语言 定义操作所有关系型数据库的统一标准 对于同一个需求,每一种数据库操作的方式可能会存在一些不一样的地方,我们称为“方言” SQL 语句可以单行或多行书写,以 分号结尾 。 如上,

    2023年04月15日
    浏览(56)
  • 【SQL刷题】Day2----SQL语法基础查询

    Day2----SQL语法基础查询 博主昵称:跳楼梯企鹅 博主主页面链接:博主主页传送门 博主专栏页面连接:专栏传送门--网路安全技术 创作初心:本博客的初心为与技术朋友们相互交流,每个人的技术都存在短板,博主也是一样,虚心求教,希望各位技术友给予指导。 博主座右铭

    2023年04月08日
    浏览(37)
  • 【SQL】SQL的基础知识-语法、关键字、函数

    SQL(Structured Query Language)是一种用于管理关系数据库管理系统(RDBMS)的语言。在本文中,我们将讨论SQL的基础知识,包括语法、和函数。 SQL语法由多个和操作符组成,用于完成对数据的操作。以下是SQL的基础语法: 其中, SELECT 用于选择要查询的列,

    2024年02月06日
    浏览(56)
  • 基础SQL语法语句大全(一篇学会所有SQL语句)

       如:select distinct name from student;  如:select name,salary from employee where deptno = 3;  如:select * from employees where deptno = 3 and salary-5000;(两个条件同时满足) select * from employees where (deptno =3 or depton =1) and salary 5000;  如:select * from dept where loc like \\\'一楼%\\\';(表示查找loc字段中以一楼开

    2023年04月17日
    浏览(56)
  • SQL语法——REPLACE语句

    REPLACE MySQL REPLACE语句是标准SQL的MySQL扩展。MySQL REPLACE语句的工作原理如下: 如果新行已不存在,则MySQL REPLACE 语句将插入新行。 如果新行已存在,则 REPLACE 语句首先删除旧行,然后插入新行。在某些情况下,REPLACE语句仅更新现有行。 注意:要确定表中是否已存在新行,MyS

    2023年04月08日
    浏览(68)
  • SQL的1999语法

    目录 交叉连接 实现交叉连接 自然连接 实现自然连接(实际上就是内连接) ON和USING 使用自然连接时要求两张表的字段名称相同,但是如果不相同或者两张表中有两组字段是重名,这时就要利用 ON 子句指定关联条件,利用 USING 子句设置关联字段 利用 USiNG 子句设置关联字段实

    2024年02月21日
    浏览(16)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包