In SQL Server, the alphabet does not end at Z!

Sorting it all Out
Michael Kaplan's random stuff of dubious value
Be sure to read the disclaimer here first!

In SQL Server, the alphabet does not end at Z!

  • Comments 6

Previous posts in this series:

  • In SQL Server, the distance between A and Z is wider than you might think
  • In SQL Server, A-Z, A-z, a-Z, and a-z may not mean the same thing
  • In SQL Server, the wrong range can make you seem insensitive to one's width! (aka Do my V's look fat?)
  • In SQL Server, your ranges also need to ACCENT-uate the positives
  • When I think back to that very first post in the series, I wonder how many people realized that I basically moved on from that post where I admitted that there were 15 or 20 characters that did not fit between anything akin to an A or anything akin to a Z, since the next few posts after that spent so much time dealing with the Z border -- as if those other characters didn't even exist.

    They fall into two categories:

    1) The various forms of YOGH/EZH, which could in theory all go after Z by default anyway (which is where they end up here, if you notice. :-)

    2) A bunch of other miscellaneous stuff that is not needed by any of the languages that rely on the default collation table for their collation behavior.

    Anyway, here they all are (the five that are not in any shipping version of SQL Server marked in bold):

    • ʒ  (U+0292, LATIN SMALL LETTER EZH)
    • Ʒ  (U+01b7, LATIN CAPITAL LETTER EZH)
    • ǯ  (U+01ef, LATIN SMALL LETTER EZH WITH CARON)
    • Ǯ  (U+01ee, LATIN CAPITAL LETTER EZH WITH CARON)
    • ƹ  (U+01b9, LATIN SMALL LETTER EZH REVERSED)
    • Ƹ  (U+01b8, LATIN CAPITAL LETTER EZH REVERSED)
    • ƺ  (U+01ba, LATIN SMALL LETTER EZH WITH TAIL)
    • ʓ  (U+0293, LATIN SMALL LETTER EZH WITH CURL)
    • ᶾ  (U+1dbe, MODIFIER LETTER SMALL EZH)
    • ᴣ  (U+1d23, LATIN LETTER SMALL CAPITAL EZH)
    • ƾ  (U+01be, LATIN LETTER INVERTED GLOTTAL STOP WITH STROKE)
    • ʔ  (U+0294, LATIN LETTER GLOTTAL STOP)
    • Ɂ  (U+0241, LATIN LETTER CAPITAL GLOTTAL STOP)
    • ʕ  (U+0295, LATIN LETTER PHARYNGEAL VOICED FRICATIVE)
    • ʖ  (U+0296, LATIN LETTER INVERTED GLOTTAL STOP)
    • ʡ  (U+02a1, LATIN LETTER GLOTTAL STOP WITH STROKE)
    • ʢ  (U+02a2, LATIN LETTER REVERSED GLOTTAL STOP WITH STROKE)
    • ʘ  (U+0298, LATIN LETTER BILABIAL CLICK)
    • ʬ  (U+02ac, LATIN LETTER BILABIAL PERCUSSIVE)
    • ʭ  (U+02ad, LATIN LETTER BIDENTAL PERCUSSIVE)

    So then we get to it -- you could start thinking of your A-ʭ/a-ʭ range (well, technically your A-ʘ/a-ʘ range).

    Obviously if new Latin letters are added that don't specifically make sense to be interlaced within the table. So thinking about that for a moment (and not wanting some random future version with an updated collation option like SQL Server 2005 gave suggesting the need to have something different.

    Simmer with that one for a bit. It does get a bit worse, and I will get to that in tomorrow's post!

     

    This post brought to you by ʘ (U+0298, aka LATIN LETTER BILABIAL CLICK)

    Comment on the blather
    Leave a Comment
    • Please add 7 and 7 and type the answer here:
    • Post
    Blog - Comment List
    • Thorn, what happened to Thorn?  It's properly the 27th basic letter of the Latin alphabet.  And of course Yogh should sort with G, not with Z and Ezh; the whole point of Yogh was to discriminate between the G-like and Z-like forms.

    • Very good question, one which actually anticipates tomorrow's exciting episode....

    • Previous posts in this series: In SQL Server, the distance between A and Z is wider than you might think

    • Just wondering: SQL actually includes the listed characters (and only the listed ones) if I use Z-ʘ? Meaning exclude non-letters? Or exclude Latin letters? (although "MODIFIER LETTER SMALL EZH" is not "Latin letter" and is included).

    • SQLS does not use character categories -- it uses collations. And when characters are sorted somewhere, that is where you'll find them. One of the biggest problems with range checking!

    • Previously in this series, I have talked about many things. Like how the distance between A and Z is

    Page 1 of 1 (6 items)