PL/SQL 逻辑运算符评估整个函数

发布于 2024-08-24 19:21:27 字数 187 浏览 2 评论 0原文

我知道在类似 C 的语言中,逻辑运算符一次计算一个,因此:

false && really_expensive_function()

is 不会导致调用该函数(我不记得它的 CS 名称)。 PL/SQL 中是否也会发生同样的情况,或者我是否需要将 IF 部分分解为单独的块?

I know in C like languages logical operators are evaluated one at a time so:

false && really_expensive_function()

is doesn't result in the function being called (I can't remember the CS name for this). Does the same happen in PL/SQL or do I need to break the IF parts out to separate blocks?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

鸠书 2024-08-31 19:21:27

CS 名称为 short-circuming有关短路评估的维基百科条目)是的,plsql 正是这样做的。

The CS name is short-circuiting (wikipedia entry on short-circuit evaluation) and yes, plsql does exactly that.

站稳脚跟 2024-08-31 19:21:27

我认为您正在寻找的术语是“惰性评估”。您可能需要查看 这个问题

I think the term you are looking for is "lazy evaluation". You may want to look at this question.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文