gpt4 book ai didi

postgresql - 自定义 ORDER BY 解释

转载 作者:行者123 更新时间:2023-11-29 11:05:50 27 4
gpt4 key购买 nike

我很久以前就发现了这个,从那以后就一直在使用它;然而,今天看着它,我意识到我并不完全理解它为什么会起作用。有人可以帮我解释一下吗?

ORDER BY  s.type!= 'Nails',
s.type!= 'Bolts',
s.type!= 'Washers',
s.type!= 'Screws',
s.type!= 'Staples',
s.type!= 'Nuts', ...

如果我按 s.type 排序,它会按字母顺序排序。如果我使用上面的示例,它使用与行位置相同的顺序。我不明白的是 != 的用法。如果我使用 = 它以相反的顺序出现。我无法理解这个概念。

在我看来,使用 = 代替上面的 != 会把 Nails 放在最前面,但它不会,它会把它放在最后。我想我的问题是:为什么我必须在这种情况下使用 !=,而不是 =?

最佳答案

@Scott Bailey建议好主意。但自 PostgreSQL 9.5 以来,它甚至可以更简单(您不必创建自定义函数)。只需使用 array_position功能:

ORDER BY array_position(array['Nails','Bolts','Washers','Screws','Staples','Nuts'], s.type)

关于postgresql - 自定义 ORDER BY 解释,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4088532/

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