Apa arti pemeriksaan dalam SQL, dan apa fungsinya?
sql
sql-server-2005
tsql
mysql
LOVE_KING
sumber
sumber
Jawaban:
Susunan dapat secara sederhana dianggap sebagai urutan.
Dalam bahasa Inggris (dan ini sepupu aneh, Amerika), pemeriksaan mungkin merupakan masalah yang cukup sederhana yang terdiri dari pengurutan berdasarkan kode ASCII.
Setelah Anda masuk ke bahasa Eropa yang aneh dengan semua aksen dan fitur lainnya, susunan berubah. Misalnya, meskipun bentuk aksen yang berbeda dari
a
mungkin ada di titik kode yang berbeda, semuanya mungkin perlu diurutkan seolah-olah merupakan huruf yang sama.sumber
e
,ë
,é
,ě
, danè
mungkin menjadi huruf yang berbeda untuk tujuan pemesanan (tapi mungkin surat yang sama ketika mencari, sialan orang-orang Eropa gila;)).42
huruf,15
di antaranya memiliki diakritik?where st= 'aaa'
?Selain "huruf beraksen diurutkan secara berbeda dari yang tidak beraksen" dalam beberapa bahasa Eropa Barat, Anda harus mempertimbangkan kelompok huruf, yang terkadang juga diurutkan secara berbeda.
Secara tradisional, dalam bahasa Spanyol, "ch" dianggap sebagai huruf dengan sendirinya, sama dengan "ll" (keduanya mewakili fonem tunggal), jadi daftar akan diurutkan seperti ini:
Perhatikan semua kata yang dimulai dengan satu c pergi bersama, kecuali kata-kata yang dimulai dengan ch yang setelahnya , sama dengan kata-kata awal- ll yang setelah semua kata yang dimulai dengan satu l . Ini adalah urutan yang akan Anda lihat di kamus dan ensiklopedia lama, terkadang bahkan hari ini oleh organisasi yang sangat konservatif.
Royal Academy of the Language mengubah ini untuk mempermudah bahasa Spanyol untuk diakomodasi di dunia komputasi. Namun demikian, ñ masih dianggap sebagai huruf yang berbeda dari n dan setelahnya , dan sebelum o . Jadi ini adalah daftar yang diurutkan dengan benar:
Dengan memilih susunan yang benar, Anda menyelesaikan semua ini untuk Anda, secara otomatis :-)
sumber
Aturan yang menjelaskan cara membandingkan dan mengurutkan string: urutan huruf; apakah kasus itu penting, apakah diakritik itu penting, dll.
Misalnya, jika Anda ingin semua huruf berbeda (katakanlah, jika Anda menyimpan nama file di
UNIX
), Anda menggunakanUTF8_BIN
pemeriksaan:SELECT 'A' COLLATE UTF8_BIN = 'a' COLLATE UTF8_BIN --- 0
Jika Anda ingin mengabaikan perbedaan huruf dan diakritik (misalnya, untuk mesin telusur), Anda menggunakan
UTF8_GENERAL_CI
pemeriksaan:SELECT 'A' COLLATE UTF8_GENERAL_CI = 'ä' COLLATE UTF8_GENERAL_CI --- 1
Seperti yang Anda lihat, kumpulan ini (aturan perbandingan) menganggap
A
huruf besar dan huruf kecilä
adalah huruf yang sama, mengabaikan perbedaan huruf besar dan diakritik.sumber
Collation menentukan cara Anda mengurutkan dan membandingkan nilai string
Misalnya, ini menjelaskan bagaimana menangani
äàa
dll)Aa
)cote < côte < coté < côté.
cote < coté < côte < côté
sumber
Collation berarti menetapkan beberapa urutan ke karakter dalam Alphabet, katakanlah, ASCII atau Unicode dll.
Misalkan Anda memiliki 3 karakter dalam alfabet Anda - {A, B, C}. Anda dapat menentukan beberapa contoh collation untuk itu dengan menetapkan nilai integral ke karakter
Faktanya, Anda dapat mendefinisikan n! collations pada Alfabet ukuran n. Dengan urutan seperti itu, rutinitas pengurutan yang berbeda seperti jenis string LSD / MSD memanfaatkannya untuk menyortir string.
sumber
Penyusunan menentukan bagaimana data Anda diurutkan dan dibandingkan. Ini sangat penting terkait dengan internazionalization, misalnya bagaimana Anda mengurutkan kanji jepang?
Jika Anda melakukan pemeriksaan google dan sql server, Anda akan menemukan banyak artikel yang membahasnya!
sumber
Referensi diambil dari Artikel ini: Collation adalah seperangkat aturan untuk membandingkan karakter dalam himpunan karakter. Itu juga telah mengatur untuk menyortir karakter dan urutan yang tepat dari dua karakter bervariasi dari bahasa ke bahasa. Susunan membandingkan dua string seperti, jika sebuah kata lebih besar dari yang lain, dan mengurutkan sesuai.
Jika Anda menggunakan set Karakter “latin1”, Anda dapat menggunakan Collation “latin1_swedish_ci”.
Anda harus memilih pemeriksaan yang benar karena pemeriksaan yang salah dapat mempengaruhi kinerja database Anda.
sumber
http://en.wikipedia.org/wiki/Collation
sumber
Pemeriksaan adalah bagaimana SQL server memutuskan bagaimana mengurutkan dan membandingkan teks.
Lihat MSDN .
sumber