Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/eclipse/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何防止mysql存储过程中的select查询重复?_Mysql_Sql_Stored Procedures - Fatal编程技术网

如何防止mysql存储过程中的select查询重复?

如何防止mysql存储过程中的select查询重复?,mysql,sql,stored-procedures,Mysql,Sql,Stored Procedures,我想检查select是否存在任何记录,然后返回记录,如果不存在任何记录,则返回消息。 我不想要两个结果,也不想使用任何out参数。 例如: BEGIN IF(SELECT id,name FROM users) THEN SELECT id,name FROM users ELSE SELECT "There are no users" as error; END IF; END 但上面重复了“选择id,

我想检查select是否存在任何记录,然后返回记录,如果不存在任何记录,则返回消息。 我不想要两个结果,也不想使用任何out参数。 例如:

   BEGIN
     IF(SELECT id,name FROM users) THEN
       SELECT id,name FROM users
     ELSE
       SELECT "There are no users" as error;
     END IF;
   END
但上面重复了“选择id,来自用户的名称”。

如果存在,则使用“选择id,来自用户的名称”-找到第一行后,此查询将停止。将完全执行第二个查询副本。即使存在,从用户中选择1就足够了,并将给出相同的结果。