메뉴 건너뛰기

GREATUSER

free

MySQL 8.0: ひらがなカタカナを判別する日本語用Collation 以前の記事では、MySQL 8.0.1で導入された新しい 日本語のutf8bm4のCollation(文字照合順)について ご紹介しました。このcollation (utf8mb4_ja_0900_as_cs) は、CLDR 30で定義されたアクセント記号(清音濁音半濁音)ならびに大文字小文字(拗音促音など)を判別する実装となっています。 今日ご紹介するのはひらがなカタカナを判別できる新しい「かなセンシティブ」なCollation utf8mb4_ja_0900_as_cs_ksです。DUCETではひらがながカタカナよりも前にソートされるように3次レベルの重みを定義しています。例えば: 3042 ; [.3D5A.0020.000E] # HIRAGANA LETTER A 30A2 ; [.3D5A.0020.0011] # KATAKANA LETTER A 2次レベルでの違い(000E および 0011)によって 0x3042 (あ) < 0x30A2 (ア) となります。CLDRではひらがなとカタカナの違いは4次レベル(例: &あ<<<<ア)で比較するよう定義されています。デフォルトの比較レベルは3次レベル(強さ 3)となっており、最初の3次レベルでみると同じとなります。 utf8mb4_ja_0900_as_cs_ksについて utf8mb4_ja_0900_as_csに対していただいたフィードバックにお応えする形で、ひらがなとカタカナを判別する新しいCollationである utf8mb4_ja_0900_as_cs_ks を追加することにしました。ここでの’_ks’は「かなセンシティブ Kana Sensitive」を意味しています。 このCollationは最初の3次レベルまでが同じひらがなとカタカナの判別に必要となる4次レベルでの処理を行います。以下の例では、utf8mb4_ja_0900_as_cs および utf8mb4_ja_0900_as_cs_ks のそれぞれのCollationでの文字列比較結果です: mysql> SET @s1 = CONVERT('きゅう' USING utf8mb4); Query OK, 0 rows affected (0.01 sec) mysql> SET @s2 = CONVERT('キュウ' USING utf8mb4); Query OK, 0 rows affected (0.00 sec) mysql> SET @s3 = CONVERT('きゆう' USING utf8mb4); Query OK, 0 rows affected (0.00 sec) mysql> SET @s4 = CONVERT('キユウ' USING utf8mb4); Query OK, 0 rows affected (0.00 sec) mysql> SELECT STRCMP(@s1 COLLATE utf8mb4_ja_0900_as_cs, @s2); +------------------------------------------------+ | STRCMP(@s1 COLLATE utf8mb4_ja_0900_as_cs, @s2) | +------------------------------------------------+ | 0 | +------------------------------------------------+ 1 row in set (0.00 sec) mysql> SELECT STRCMP(@s2 COLLATE utf8mb4_ja_0900_as_cs, @s3); +------------------------------------------------+ | STRCMP(@s2 COLLATE utf8mb4_ja_0900_as_cs, @s3) | [ more... ]

The post MySQL 8.0: ひらがなカタカナを判別する日本語用Collation appeared first on 지락문화예술공작단.




원문출처 : https://jirak.net/wp/mysql-8-0-%E3%81%B2%E3%82%89%E3%81%8C%E3%81%AA%E3%82%AB%E3%82%BF%E3%82%AB%E3%83%8A%E3%82%92%E5%88%A4%E5%88%A5%E3%81%99%E3%82%8B%E6%97%A5%E6%9C%AC%E8%AA%9E%E7%94%A8collation/
번호 제목 글쓴이 날짜 조회 수
310 Defending against ransomware with Windows 10 Anniversary Update 관리자 2016.11.12 225
309 Master the Master-Detail Pattern 관리자 2017.05.02 225
308 Kayas College chooses Surface to transform distance learning 관리자 2017.05.02 225
307 A conversation with Surface and Marimekko designers on the intersection of customization, design, and tech 관리자 2017.10.13 225
306 Windows Community Standup on February 22, 2018 관리자 2018.02.16 225
305 Bringing expressive, performant typography to Microsoft Edge with Variable Fonts 관리자 2018.03.14 225
304 Attorney Doug Passon uses Surface to pursue personal and professional passions 관리자 2016.08.12 226
303 Microsoft Store shares four ways to declutter your digital space 관리자 2017.02.14 226
302 Microservices & API Gateways, Part 2: How Kong Can Help 관리자 2017.04.27 226
301 Black Marble uses Microsoft HoloLens to help revolutionise Crime Scene Investigation with tuServ 관리자 2017.10.10 226
300 Healthcare is getting safer, smarter and more secure with HP’s new lineup of Windows 10 devices 관리자 2018.03.06 226
299 Windows 10 in S Mode coming soon to all editions of Windows 10 관리자 2018.03.08 226
298 Windows 10 Tip: Stay in sync with OneDrive 관리자 2017.01.31 227
297 Managing Windows IoT Core devices with Azure IoT Hub 관리자 2017.04.08 227
296 New Windows 10 Creators Update gaming features arrive this week for Windows Insiders 관리자 2017.01.26 228
위로