메뉴 건너뛰기

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/
번호 제목 글쓴이 날짜 조회 수
340 Alpinestars car pack and new expansion coming to best-selling Forza Horizon 3 관리자 2016.11.02 299
339 Minecraft: Education Edition available now! 관리자 2016.11.02 324
338 Alcatel announces the virtual reality enabled IDOL 4S phone with Windows 10 관리자 2016.11.02 241
337 The “Internet of Stranger Things” Wall, Part 1 – Introduction and Remote Wiring 관리자 2016.11.01 284
336 Small businesses increase sales and make better connections with new technology solutions 관리자 2016.11.01 304
335 Windows 10 Tip: How to set up Windows Hello on your PC 관리자 2016.11.01 297
334 A peek into the WebAssembly Browser Preview 관리자 2016.11.01 328
333 Just released – Windows developer evaluation virtual machines – October 2016 build 관리자 2016.10.29 205
332 This Week on Windows: Windows 10 Creators Update, new Surface devices and more 관리자 2016.10.29 325
331 Going social: Project Rome, Maps & social network integration (App Dev on Xbox series) 관리자 2016.10.28 253
330 Surface helps Apple MacBook owners trade up to Pen and on-screen touch 관리자 2016.10.28 263
329 Amazon DynamoDB 데이터 백업 및 복원 방법 – (2) 리전간 복제 기능을 활용한 데이터 이동 관리자 2016.10.28 248
328 Amazon Cognito로 10분만에 인증 서비스 만들기 관리자 2016.10.28 275
327 Kevin Gallo gives the developer perspective on today’s Windows 10 Event 관리자 2016.10.27 135
326 Ten things we announced today at Microsoft’s Windows 10 Event 관리자 2016.10.27 279
위로