gpt4 book ai didi

sql - 检查空字符串时的 COALESCE 与 IS NOT NULL 性能

转载 作者:行者123 更新时间:2023-12-04 14:35:22 25 4
gpt4 key购买 nike

我在网上找到的一些文章将 ISNULL 与 COALESCE 进行了比较,所以我认为我的问题有点不同。

我想知道在性能方面哪个更好?

SELECT * FROM mytable WHERE mycolumn IS NOT NULL AND mycolumn <> '';

或者
SELECT * FROM mytable WHERE COALESCE(mycolumn,'') <> '';

除了性能之外,我在决定时还有其他需要考虑的问题吗?

编辑:

我正在使用 Teradata。

最佳答案

此版本稍微更可讨论,并允许(可能)使用索引

SELECT * FROM mytable WHERE mycolumn IS NOT NULL AND mycolumn <> '';

可以简化为
SELECT * FROM mytable WHERE mycolumn <> '';

我说“稍微”和“可能”的原因是非等式谓词很可能意味着无论如何最终都会进行全面扫描。

关于sql - 检查空字符串时的 COALESCE 与 IS NOT NULL 性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3935367/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com