我在 mysql 中创建了一个 SP,我将在其中传递一个 IN 参数“val”。在过程的主体部分,我使用 if else 条件和在查询的 where 条件中具有“val”的 select 语句。在其中一个选择查询中,我不想使用“val”。那么如何为不使用“val”参数的条件调用过程。提前致谢,克里希纳
最佳答案
将空值传递到您的存储过程中,让您的存储过程检测到空值并相应地执行操作。
使用空值调用存储过程:
call my_proc(null);
然后在 proc 内部,如果参数为 null,您将如何“忽略”该参数:
select ...
from ...
where ...
and (val is null or some_column = val)
关于mysql - 如何在不传递参数的情况下调用存储过程?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15630406/