次のSQL文はどのようにMySQLにtrue
を返しますか?この文字シーケンス比較がどうして真を返すのでしょうか?
SELECT 'SeP' = 'sęp';
mysql> select 'SeP' = 'sęp';
+----------------+
| 'SeP' = 'sęp' |
+----------------+
| 1 |
+----------------+
1 row in set (0.00 sec)
私のデータベースの文字セットと照合順序は次のとおりです。
mysql> select @@character_set_database, @@collation_database, @@collation_connection;
+--------------------------+----------------------+------------------------+
| @@character_set_database | @@collation_database | @@collation_connection |
+--------------------------+----------------------+------------------------+
| utf8mb4 | utf8mb4_general_ci | utf8_general_ci |
+--------------------------+----------------------+------------------------+
1 row in set (0.00 sec)
私たちは、仕様を参照する必要があると思いますが、私はそれが合理的な両方の文字が任意の特定の言語に縛られない、一般的な照合に等しいと見なされていることを見つけます。 –
この機能を実現するには、 'CASE WHEN'を試してみてください。 –
あなたが試すことができますが、あなたは '@@ collation_connectionのを選択になるはずです@Jaggerそれは多くの使用 – Shadow