一些个SQL

文章提供了一个关于数据库操作的存储过程示例,该过程涉及声明变量、游标使用、数据更新以及处理未找到记录的情况。同时,展示了一条复杂的SQL查询,该查询涉及到子查询、集合函数GROUP_CONCAT和FIND_IN_SET在多表JOIN中的应用。
摘要由CSDN通过智能技术生成

存储过程

BEGIN

declare tiems INT DEFAULT 0;

DECLARE done INT DEFAULT 0;
DECLARE scene cursor for SELECT SCENECODE, VERSION, UGID,YHDM,XSMC,ORGNAME FROM T_PORTAL_RPA_SCENE GROUP BY SCENECODE, VERSION;
DECLARE CONTINUE HANDLER FOR NOT FOUND SET done = 1;
open scene;

REPEAT

fetch scene into ASCENECODE, AVERSION, AUGID,AYHDM,AXSMC,AORGNAME;

if not done THEN
UPDATE RPADOWNLOADMANAGE SET UGID = AUGID, YHDM=AYHDM, XSMC=AXSMC, ORGNAME=AORGNAME WHERE  ROBOTID=ASCENECODE AND VERSION = AVERSION;
end if;
until done end repeat;

close scene;
commit;
END

 SQL

SELECT t2.id, t2.name
FROM (
     SELECT
            @ids as _ids,
            (SELECT @ids := GROUP_CONCAT(id) FROM basis_grid_info WHERE FIND_IN_SET(pid, @ids)) AS cids
     FROM basis_grid_info, (SELECT @ids := '6d58260e84c54ab4b72059bea2e33f92', @l := 0) b
     WHERE @ids IS NOT NULL
    ) t1, basis_grid_info t2
WHERE FIND_IN_SET(t2.id, t1._ids)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值