MySQL WHERE子句不使用字符串

时间:2016-08-01 20:07:49

标签: mysql

我有一张包含一些电子邮件地址的表格。该地址当然是一个字符串,我在创建表时将其设置为VARCHAR(100)DEFAULT NULL。

现在,当我使用:

SELECT * FROM emails;

它工作正常,如果我也选择使用ID,它可以正常工作

SELECT * FROM emails WHERE id = 1;

但如果我试图找到特定的电子邮件

SELECT * FROM emails WHERE address = 'email@host.com'

它根本不起作用。它不返回与此匹配的行,但 是行匹配,因为它出现在SELECT * FROM emails查询中。

这里可以发生什么?为什么WHERE子句不起作用?

编辑:数据来自以下导入

LOAD DATA LOCAL INFILE 'c:/users/user/dev/mysql/emails.txt'
INTO TABLE emails
FIELDS terminated by ','
ENCLOSED BY '"'
LINES TERMINATED BY '\n'
(address)

1 个答案:

答案 0 :(得分:2)

该字段中可能包含前导或尾随字符。试试这个:

SELECT * FROM emails WHERE address LIKE '%email@host.com%'