我想问一下,如果我有一个班级表,有id,name,我更具name进行模糊查询,前台要是输入%,我后台怎么封装查询啊,现在老师返回的都是所有
------解决思路----------------------
select * from student where upper(name) like '%'
------解决思路----------------------
upper(‘输入的关键字’)
------解决思路----------------------
‘%’
------解决思路----------------------
SQL Like 通配符特殊用法:Escape
阐述Escape 的作用:
1.使用 ESCAPE 关键字定义转义符。在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符。例如,要搜索在任意位置包含字符串 5% 的字符串,请使用:
WHERE ColumnA LIKE '%5/%%' ESCAPE '/'
但是在mysql中好像不能使用"\"。
------解决思路----------------------
问题没什么可说的,楼上都解释了。
正常项目开发,如果拼装SQL语句,就要对特殊字符进行过滤,严防SQL注入