我的表格中填充了总共40.000行,其中至少有超过2.000行,以字母A
开头。
现在,当我使用
时,我的SELECT
查询会返回一些结果
$selectGames = mysql_query("SELECT * FROM Games WHERE GameName LIKE '%A'");
但是当我使用时:
$selectGames = mysql_query("SELECT * FROM Games WHERE GameName LIKE 'A%'");
总共返回0行。那是为什么?
答案 0 :(得分:3)
%A
表示“字符串的结尾是字母A”。 A%
是相反的“以字母A开头的字符串”
%A A%
APPLE N Y
ABBA Y Y
GOUDA Y N
它们是完全不同的匹配,所以你的两个查询不等同。
同样,请确保将表的排序规则设置为不区分大小写的匹配项。如果它具有案例敏感性,那么a
和A
将被区别对待。
编辑:同样,请记住空白事项:
mysql> select 'gouda ' like '%a';
^---note the space here
+--------------------+
| 'gouda ' like '%a' |
+--------------------+
| 0 |
+--------------------+
1 row in set (0.00 sec)