這出現了很多,我可以看到它出現在StackOverflow的XSLT,Ruby和Drupal但我不'不要專門爲SQL查看它。如何在SQL中排序,忽略文章('the「,」a「,」an「等)
所以問題是,當他們以「The」,「A」或「An」開頭時,如何正確地分類標題?
一種方法是簡單地TRIM()這些字符串:
ORDER BY TRIM(
LEADING 'a ' FROM
TRIM(
LEADING 'an ' FROM
TRIM(
LEADING 'the ' FROM LOWER(title)
)
)
)
這是suggested on AskMeFi而回(它需要的是LOWER()
功能?)。
我知道我也看到過某種Case/Switch的實現,但對Google來說有點難。
顯然有一些可能的解決方案。有什麼是好的是SQL的權重,其中有性能影響。我見過
同意一個鏈接SO問題的評論者:規則可能會變得比看起來更復雜。例如,你的特別建議可能無法正確地對以下列表進行排序:「A測試」,「B測試」,「C測試」。 – 2011-09-12 19:54:26