我有一個表專業化(ID,名稱)其中名稱是一個varchar與索引。當我運行查詢使用像我得到空結果,而如果我在查詢中使用=它會給我確切的結果。爲什麼喜歡返回空而反過來返回結果?
我的查詢如下:
select * from specialization where name like 'Anesthesiology';
這回空集
select * from specialization where name = 'Anesthesiology';
這將返回一個結果集。
這是怎麼發生的?
我敢肯定答案在這個頁面上:http://dev.mysql.com/doc/refman/5.7/en/case-sensitivity.html。這很複雜,取決於字符串中的排序規則和可能的擴展字符。 – 2014-10-29 11:01:29
你是否直接在mysql中試用它?它應該有效,如果名字恰好是「麻醉學」。我剛剛在我自己的數據庫上試過,並且它可以工作。 – vaso123 2014-10-29 11:09:41
是的,它的工作原理。 http://sqlfiddle.com/#!2/75b875/1 – vaso123 2014-10-29 11:11:28