gpt4 book ai didi

sql - SQL where field vs.where field =具有多个ors?

转载 作者:行者123 更新时间:2023-12-03 20:07:51 29 4
gpt4 key购买 nike

在性能方面,哪个更适合使用? ...关于可读性/可理解性? ...关于公认的标准?

SELECT *
FROM Wherever
WHERE Greeting IN ('hello', 'hi', 'hey')


要么

SELECT *
FROM Wherever
WHERE Greeting = 'hello'
OR Greeting = 'hi'
OR Greeting = 'hey'


第一个对我来说似乎更直观/更清晰,但是我不确定接受的标准和性能。

最佳答案

它具有更高的可读性和更广泛的接受性:

SELECT *
FROM Wherever
WHERE Greeting in ('hello', 'hi', 'hey')


所有现代SQL服务器都会优化您的查询,因此它们都可能都被更改为服务器上运行的同一代码,因此性能差异可以忽略不计或根本不存在。

编辑:

显然, in选项的速度更快,因为它评估为二进制查找,而多个 =只是分别评估每个语句。

关于sql - SQL where field vs.where field =具有多个ors?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2343242/

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