메뉴 건너뛰기

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/
번호 제목 글쓴이 날짜 조회 수
1030 Building in 10k: Compilation, Optimization, and Compression 관리자 2016.09.24 6
1029 This Week on Windows: Forza Horizon 3, fall TV and “Destination: Mars” 관리자 2016.09.24 1
1028 Background Audio and Cross Platform Development with Xamarin (App Dev on Xbox series) 관리자 2016.09.24 12
1027 API Gateway 업데이트 – 간편한 API 개발을 위한 신규 통합 기능 관리자 2016.09.25 12
1026 Crystal Group brings fast fashion to retailers in less than 24 hours using Microsoft technologies 관리자 2016.09.27 56
1025 New Windows 10 and Office 365 features for the secure productive enterprise 관리자 2016.09.27 55
1024 Surface and partners: Creating next generation services and support 관리자 2016.09.27 14
1023 Hendrick Motorsports gains competitive advantage on the race track 관리자 2016.09.27 86
1022 Windows 10 Tip: Enable the dark theme in Microsoft Edge 관리자 2016.09.27 8
1021 Forza Horizon 3 Available Worldwide on Xbox One and Windows 10 PC 관리자 2016.09.28 8
1020 Introducing Windows Defender Application Guard for Microsoft Edge 관리자 2016.09.28 86
1019 Amazon EC2 업데이트 – 신규 Amazon Linux AMI 버전 및 M4.16xlarge 인스턴스 타입 공개 관리자 2016.09.28 8
1018 Announcing Windows 10 Insider Preview Build 14936 for PC and Mobile 관리자 2016.09.29 11
1017 AWS Answers – AWS를 좀 더 효과적이고 탄탄하게 쓰는 해법! 관리자 2016.09.29 9
1016 Extend your reach with offline licensing in Windows Store for Business 관리자 2016.09.30 12
위로