使用PHP在SQL中搜索第一个字母

时间:2016-10-20 02:09:48

标签: php mysql mysqli

好吧,所以我制作了这个小脚本,运行并检查某个名称包含用户输入的字符的位置。 因此,例如,如果我输入“A”,它将显示所有具有“A”作为其名称(Admin,Toma)等的用户等。 现在我想要实现的是非常简单的,我希望它只选择以该字母开头的字符。 所以例如想象一下我输入A它会显示我只有Admin而不是Toma,因为TOMA以T开头。

当前查询

query("SELECT ime FROM users WHERE ime LIKE '%".$term."%'")

您是否建议我使用PHP来实现此目的,或者直接使用查询执行此操作?

如果是这样,请告诉我最好的方法,提前谢谢!

4 个答案:

答案 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."%'"