好吧,所以我制作了这个小脚本,运行并检查某个名称包含用户输入的字符的位置。 因此,例如,如果我输入“A”,它将显示所有具有“A”作为其名称(Admin,Toma)等的用户等。 现在我想要实现的是非常简单的,我希望它只选择以该字母开头的字符。 所以例如想象一下我输入A它会显示我只有Admin而不是Toma,因为TOMA以T开头。
当前查询
query("SELECT ime FROM users WHERE ime LIKE '%".$term."%'")
您是否建议我使用PHP来实现此目的,或者直接使用查询执行此操作?
如果是这样,请告诉我最好的方法,提前谢谢!
答案 0 :(得分:2)
您的查询应该只删除初始通配符:
"SELECT ime FROM users WHERE ime LIKE '".$term."%'"
答案 1 :(得分:2)
从LIKE比较的开头删除'%'
通配符。该通配符匹配零个,一个或多个任何字符。
作为演示
SELECT 'Toma' LIKE '%A%' -- contains an 'A'
, 'Toma' LIKE 'A%' -- starts with 'A'
, 'Toma' LIKE 'Toma' -- matches 'Toma'
答案 2 :(得分:1)
query("SELECT ime FROM users WHERE ime LIKE '".$term."%'")
只需删除第一个%
请查看此http://www.w3schools.com/sql/sql_like.asp了解详情
答案 3 :(得分:0)
试试这个:
SELECT ime FROM users WHERE ime LIKE '".$term."%'"