MySQL遍历数据表的方法

 2022-10-27    447  

MySQL遍历数据表是我们经常会遇到的问题,下面就为您详细介绍MySQL遍历数据表的方法,希望对您学习MySQL遍历数据表能有所帮助。

DELIMITER$$ 

USE`tns`$$ 

DROPPROCEDUREIFEXISTS`MakeFriends`$$ 

CREATEDEFINER=`root`@`localhost`PROCEDURE`MakeFriends`() 
BEGIN 
DECLAREv_adminIdBIGINT(12); 
DECLAREv_currentUserIDBIGINT(12); 
DECLAREv_ExistRelaINT; 
DECLAREDoneINTDEFAULT0; 
DECLARErsCURSORFORSELECTuserIdFROMhw_user; 
/*异常处理*/ 
DECLARECONTINUEHANDLERFORSQLSTATE'02000'SETDone=1; 

SETv_adminId=1; 

/*打开游标*/ 
OPENrs; 

/*逐个取出当前记录userId字段的值*/ 
FETCHNEXTFROMrsINTOv_currentUserID; 
/*遍历数据表*/ 
REPEAT 
IFNOTDoneTHEN 
SELECTCOUNT(*)FROMhw_relationshipWHEREsourceId=v_currentUserIDANDtargetId=v_adminIdINTOv_ExistRela; 
/*SELECTv_currentUserID;SELECTv_ExistRela;*/ 
IFv_currentUserID!=v_adminIdANDv_ExistRela=0THEN 
/*insertrelationrecords*/ 
INSERTINTOhw_relationship(createTime,relationType,sourceId,targetId)VALUES(NOW(),1,v_currentUserID,v_adminId); 
INSERTINTOhw_relationship(createTime,relationType,sourceId,targetId)VALUES(NOW(),1,v_adminId,v_currentUserID); 
ENDIF; 
ENDIF; 

FETCHNEXTFROMrsINTOv_currentUserID; 

UNTILDoneENDREPEAT; 

/*关闭游标*/ 
CLOSErs; 
END$$ 

DELIMITER; 

MySQL遍历数据表的方法

  •  标签:  
  • MySQL
  •  

原文链接:https://77isp.com/post/4377.html

=========================================

https://77isp.com/ 为 “云服务器技术网” 唯一官方服务平台,请勿相信其他任何渠道。