mysql游标中的记录数没有迭代?

vis*_*hal 8 mysql count cursor

我正在尝试为下面的逻辑编写mysql程序,

select id, fullname from users where fullname like concat(lastname, ' ', firstname, ' (' , middlename, '%');
Run Code Online (Sandbox Code Playgroud)

如果上面的查询返回0记录然后

    select id, fullname from users where fullname like concat(lastname, ' ', firstname, '%');

.... few more queries depending upon result,
Run Code Online (Sandbox Code Playgroud)

我正在尝试编写mysql程序的程序,在那,我使用的是mysql游标,

DECLARE user_cnt CURSOR FOR select id, fullname from users where fullname like concat(lastname, ' ', firstname, ' (' , middlename, '%'); 
Run Code Online (Sandbox Code Playgroud)

现在我想检查user_cursor中的记录数,以便我可以检查条件"如果查询返回0记录然后"

如何在没有迭代的情况下找到mysql游标中的记录数?

Fil*_*lva 13

在光标前做一个计数:

select count(*)
into @user_cnt
from users
where fullname like concat (
    lastname,
    ' ',
    firstname,
    ' (',
    middlename,
    '%'
    );
Run Code Online (Sandbox Code Playgroud)

编辑:如果您想在打开光标后执行此操作,请尝试执行以下操作:

OPEN your_cursor;
select FOUND_ROWS() into user_cnt ;
Run Code Online (Sandbox Code Playgroud)