我正在构建一个存储过程,它可以接收两个单独的值,每个值都可用于标识单个记录。这些值之一可能为空。
我的逻辑如下:如果IN_ORDER_ID
不为NULL,则将其保存到V_ORDER_ID
. 如果它是 NULL,则ORDER_ID
使用查询检索并将其保存到V_ORDER_ID
. V_ORDER_ID
然后在剩下的程序中使用。
这是代码:
SELECT COALESCE(IN_ORDER_ID, order_id) INTO V_ORDER_ID FROM SCHEMA.ORDER WHERE SXC_ORDER_NUMBER = IN_SXC_ORDER_NUMBER;
Run Code Online (Sandbox Code Playgroud)
我的问题:此查询中的合并是否仍会利用短路评估?