PROVINCE -- varchar(25)
SELECT * FROM listings WHERE PROVINCE='Bakersfield'
当存在以贝克斯菲尔德为省的条目时,返回空结果集
我很不确定为什么。当我删除WHERE
它的作品。
顺便说一句,我在 phpmyadmin 中运行它,它允许执行 SQL 语句
在 phpmyadmin 中,它在等号下方显示 ...。我不确定为什么。这可能是一个暗示。
如果
SELECT * FROM listings WHERE PROVINCE like '%Bakersfield%'
为您工作,然后您的数据中有空格。你可以删除它们
update listings
set PROVINCE = trim(PROVINCE)
见修剪()
之后,您应该检查插入数据的代码。检查为什么插入了空格并修复它。
改变你等于运营=
商LIKE
SELECT * FROM listings WHERE PROVINCE LIKE 'Bakersfield'
这应该可以解决您的问题。如果您想查找包含您的字符串的位置,只需用通配符将其包围%..%
SELECT * FROM listings WHERE PROVINCE LIKE '%Bakersfield%'
SELECT * FROM listings WHERE PROVINCE='Bakersfield'
如果以下情况不是问题,那么 abpve 查询不起作用是没有意义的。
1)如果情况是问题,则使用上或下
SELECT * FROM listings WHERE upper(PROVINCE)=upper('Bakersfield');
2)如果额外的空间是问题使用替换或修剪
SELECT * FROM listings WHERE replace(PROVINCE,' ','') ='Bakersfield'
如果没有的话,可能会有其他seniario,然后按照其他人的建议使用“Like”关键字。:)