Que signifie le classement dans SQL et que fait-il?
sql
sql-server-2005
tsql
mysql
LOVE_KING
la source
la source
Réponses:
Le classement peut être simplement considéré comme un ordre de tri.
En anglais (et c'est étrange cousin, américain), le classement peut être une question assez simple consistant à ordonner par le code ASCII.
Une fois que vous entrez dans ces étranges langues européennes avec tous leurs accents et autres fonctionnalités, le classement change. Par exemple, bien que les différentes formes accentuées de
a
puissent exister à des points de code disparates, elles peuvent toutes devoir être triées comme s'il s'agissait de la même lettre.la source
e
,ë
,é
,ě
etè
peut - être des lettres distinctes aux fins de commande (mais peut - être la même lettre lors de la recherche, damner les Européens fous;)).42
lettres, dont15
des signes diacritiques?where st= 'aaa'
?Outre les "lettres accentuées sont triées différemment des lettres non accentuées" dans certaines langues d'Europe occidentale, vous devez prendre en compte les groupes de lettres, qui sont parfois triés différemment également.
Traditionnellement, en espagnol, "ch" était considéré comme une lettre à part entière, de même que "ll" (qui représentent tous deux un seul phonème), donc une liste serait triée comme ceci:
Remarquez que tous les mots commençant par un seul c vont ensemble, sauf les mots commençant par ch qui les suivent , de même que les mots commençant par ll qui vont après tous les mots commençant par un seul l . C'est l'ordre que vous verrez dans les anciens dictionnaires et encyclopédies, parfois même aujourd'hui par des organisations très conservatrices.
L'Académie Royale de la Langue a changé cela pour faciliter l'intégration de l'espagnol dans le monde informatique. Néanmoins, ñ est toujours considéré comme une lettre différente de n et va après , et avant o . Voici donc une liste correctement ordonnée:
En sélectionnant le bon classement, vous faites tout cela pour vous, automatiquement :-)
la source
Règles qui indiquent comment comparer et trier les chaînes: ordre des lettres; si le cas compte, si les signes diacritiques sont importants, etc.
Par exemple, si vous voulez que toutes les lettres soient différentes (par exemple, si vous stockez les noms de fichiers dans
UNIX
), vous utilisez leUTF8_BIN
classement:Si vous souhaitez ignorer les différences de casse et de signes diacritiques (par exemple, pour un moteur de recherche), vous utilisez le
UTF8_GENERAL_CI
classement:Comme vous pouvez le voir, ce classement (règle de comparaison) considère les majuscules
A
et les minuscules commeä
la même lettre, en ignorant les différences de casse et de diacritique.la source
Le classement définit la manière dont vous triez et comparez les valeurs de chaîne
Par exemple, il définit comment gérer
äàa
etc.)Aa
)cote < côte < coté < côté.
cote < coté < côte < côté
la source
Le classement signifie attribuer un certain ordre aux caractères d'un alphabet, par exemple, ASCII ou Unicode, etc.
Supposons que vous ayez 3 caractères dans votre alphabet - {A, B, C}. Vous pouvez définir des exemples de classement pour celui-ci en attribuant des valeurs intégrales aux caractères
En fait, vous pouvez définir n! collations sur un Alphabet de taille n. Dans un tel ordre, différentes routines de tri comme les tris de chaînes LSD / MSD l'utilisent pour trier les chaînes.
la source
Le classement détermine la manière dont vos données sont triées et comparées. C'est très souvent important en ce qui concerne l'internationalisation, par exemple comment trier les kanji japonais?
Si vous google collation et serveur SQL, vous trouverez de nombreux articles qui en parlent!
la source
Référence est tirée de cet article: Un classement est un ensemble de règles permettant de comparer des caractères dans un jeu de caractères. Il a également statué sur le tri des caractères et l'ordre approprié de deux caractères varie d'une langue à l'autre. Un classement a comparé deux chaînes comme, si un mot est supérieur à un autre, et trie en conséquence.
Si vous utilisez le jeu de caractères «latin1», vous pouvez utiliser le classement «latin1_swedish_ci».
Vous devez choisir le bon classement car un mauvais classement peut affecter les performances de votre base de données.
la source
http://en.wikipedia.org/wiki/Collation
la source
Le classement est la manière dont le serveur SQL décide de la manière de trier et de comparer le texte.
Voir MSDN .
la source