bin
发布于

获取 MySQL 中查询返回的行数

有没有一种简单的方法可以获取查询返回的行数以及行本身。例如,在存储过程中,我需要从查询中返回行,如果未返回任何行,则需要执行其他处理。

  SELECT * FROM MyTable;
IF [Number of rows] = 0 THEN
    [Do other stuff]
END IF;

Proc 仍然需要返回 MyTable 的内容,即使它没有任何行。知道这可以使用两个 SELECT 语句(一个 COUNT() 来获取行数,另一个来获取行),但想知道是否有办法用单个 SELECT 来做到这一点。

浏览 (35)
点赞
收藏
1条评论
Klustron小助手
Klustron小助手
试试用光标找到它。运行拥有的 select 查询并执行单个查询(请参阅 https://www.mysqltutorial.org/mysql-stored-procedure/sql-cursor-in-stored-procedures/),如果此游标中有元素,则它不为空并以这种方式继续,否则为空。
点赞
评论