为什么SQL查询使用一个值而不是另一个值?

时间:2015-05-22 17:10:35

标签: mysql sql

我有usernames的专栏。我的表中有两行。一个的值为

Example@Example.com

,另一个的值为

AllenPHundleyo5Y3SDKs8bGmailmFaGC4r2xvcom

第二封电子邮件是如此不同,因为这是一封通过我网站上的功能传递的电子邮件,可以安全地显示用户输入到数据库中的任何内容。 (防止用户编写代码。)

但是,如果我使用EXACT SAME QUERY来获取每一行,

Example@Example.com 

有效,但另一方没有。即:

SELECT * FROM profile WHERE username='AllenPHundleyo5Y3SDKs8bGmailmFaGC4r2xvcom'

什么都没拉,

SELECT * FROM profile WHERE username='Example@Example.com' 

一样。这不是查询在值中不准确的问题。我使用页面查找在我的表中找到了AllenPHundleyo5Y3SDKs8bGmailmFaGC4r2xvcom。为什么会这样?

1 个答案:

答案 0 :(得分:2)

试试这个

SELECT * FROM profile
WHERE rtrim(ltrim(username))='AllenPHundleyo5Y3SDKs8bGmailmFaGC4r2xvcom'