乐易购客服电话是多少:c++的SQL中模糊查询中通配符的问题(like语句)

来源:百度文库 编辑:神马品牌网 时间:2024/05/01 12:50:54
请大家帮忙看看Sql=“where name like '天宁%'”;这句代码有何问题

目的是实现模糊查询,搜索数据库中名字为”天宁区“”天宁街道“的字段,
sql语句为 select * from 地名索引 where namelike '天宁%'
但返回值总是空 改为select * from 地名索引 where namelike '天宁%%'也是一样
如果改为 select * from 地名索引 where namelike '天宁区'
则能成功返回”天宁区这条记录“
语言是vc++,数据库为ACCESS,用DAO一切正常

在ACCESS中只认星号,所以上面那位仁兄说的第二种写法才对:
select * from 地名索引 where [name] like '*天宁*'

是的,跟具体的数据库有关。
一般通用的数据库的like使用 % ,但是ACCESS是不一样的,具体使用是这样:
select * from 地名索引 where [name] like '天宁%%';
select * from 地名索引 where [name] like '%%天宁%%';

最好参考一下数据库的说明文档。

select * from 地名索引 where [name] like '%天宁%'

或者

select * from 地名索引 where [name] like '*天宁*'