【发布时间】:2011-05-04 13:32:01
【问题描述】:
我前段时间发现了这个,从那以后就一直在使用它;但是,今天看它,我意识到我并不完全理解它为什么起作用。有人可以帮我解释一下吗?
ORDER BY s.type!= 'Nails',
s.type!= 'Bolts',
s.type!= 'Washers',
s.type!= 'Screws',
s.type!= 'Staples',
s.type!= 'Nuts', ...
如果我按 s.type 排序,它会按字母顺序排序。如果我使用上面的示例,它使用与行位置相同的顺序。我不明白的是使用!=。如果我使用 = 它以相反的顺序出现。我无法理解这个概念。
在我看来,使用 = 代替上面的 != 会将 Nails 放在首位,但事实并非如此,它会将它放在最后。我想我的问题是:为什么在这种情况下我必须使用!=,而不是 =?
【问题讨论】:
-
所以,如果我有什么不明白的地方,即使我喜欢解决方案的优雅和简单,我也应该把手捂在耳朵上,重复“La, la, la”。我不喜欢这种方法;我宁愿学习新的东西并适应它。
-
哇,好巧啊! :)