2016-07-09 24 views
0

私は、MySQLデータベースにいくつかのウェブサイトのドメインを持っている、と私は以下のように検索を実行します。奇妙な検索結果

mysql [email protected]:webinfo> SELECT * FROM raw_domains_res WHERE Domain='albumudinle.com'; 

+-----------------+-------+--------+ 
| Domain   | Num |  id | 
|-----------------+-------+--------| 
| albumudinle.com |  3 | 588242 | 
| albümüdinle.com |  2 | 592846 | 
+-----------------+-------+--------+ 

2 rows in set 
Time: 0.001s 

とPythonで、彼らは二つの異なる文字列です。なぜ誰に教えてください?ありがとうございました。

+0

は、あなたがドメインに保存されているテーブル内の2つのレコードを持っている - >「albumudinle.com」 –

+0

可能な重複の[MySQLのマッチングUnicode文字とASCIIバージョン](http://stackoverflow.com/questions/6552950/mysql-matching-unicode-characters-with-ascii-version) – joshweir

答えて

0

あなたのDomain列がユニコードの照合であると思われますか?utf8_unicode_ciのようなものでしょうか? Unicode照合で列を照会すると、ASCII以外の文字がASCII対応にロールアップされます。この詳細については、hereを参照してください。 utf8_binなどbinary照合に

  1. 変更の列の照合順序;:あなたがすることで、この問題を回避することができますまたは
  2. は、列にBINARYクエリを実行します。

    SELECT * FROM raw_domains_res WHERE Domain = BINARY 'albumudinle.com'