栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

MySql中@符号的使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

MySql中@符号的使用

MySql中@符号的使用 @符号的作用
  • @后接变量名,用以定义一个变量,该变量的有效期为语句级,即再一次执行中始终有效,基本示例如下:
-- 由于通常情况下=被认为是等于比较运算符,因此赋值运算符一般使用:=
SELECt @lt:=1, @lt:=@lt+1, @lt:=@lt+1;

实现rownum
-- 由于tmp只有一行,当这两表进行笛卡尔积链接时,结果集实际上等同于增加了一列,而由于r变量的特性,每行都在原值的基础上在进行增加操作
SELECT a.BATCHNO, a.YEAR, @r:=@r+1 FROM m1 a, (SELECt @r:=0) tmp;

实现窗口函数
-- base变量的初值,不能与窗口函数中partition by分组的枚举值相同
-- 实现此功能 row_number() (partition by base order by batchno) rn
-- case when 和 @base:= 的顺序不能颠倒,否则会有问题
SELECT a.BATCHNO, a.YEAR, a.BUDITEM, case when @base=a.BUDITEM then @r:=@r+1 ELSE
@r:=1 END rn, @base:=a.BUDITEM FROM m1 a, (SELECT @r:=1, @base:='') tmp ORDER BY a.buditem

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/1027918.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号