我用这个语句查询地址是山东青岛的(注:数据库中addr的值是山东青岛),前台是用DropDownList得到的省市是山东省青岛市,但是为什么这样查不出来数据呢?
select * from sasa where addr like '%山东省青岛市%'

解决方案 »

  1.   

    楼主的问题真纠结   去看下基础吧
    select * from sasa where addr like '%山东省青岛市%'
    这个可以查出如下类型XXX山东省青岛市XXX
      

  2.   

    select * from sasa where addr like '%山东[^省]青岛[^市]%'
    你试试,我没有测试,用正则表达式能达到你的要求
      

  3.   

    select name from test where regexp_like(name,'山东[省青岛市]')
    测试过了,没问题的
      

  4.   

    楼主没仔细理解过like吧
    山东青岛 like %山东省青岛市% 肯定没数据一般like是这么用的 用很长的一个字符去like比较短的字符
    假设 数据库里有 张三 李四 张五
    用 like ‘%张%’来查找姓张的 结果是张三和张五
      

  5.   

    我用这个语句查询地址是山东青岛的(注:数据库中addr的值是山东青岛),前台是用DropDownList得到的省市是山东省青岛市,但是为什么这样查不出来数据呢?-- 数据库里存储的是“山东青岛”,而显示出来的是“山东省青岛市”,只能说明:显示出来的数据,不是数据库中原字段的数据,是经过处理的!有什么好奇怪的呢?
      

  6.   

    -- 这样修改就可以了嘛:
    select * from sasa where addr like '%山东%青岛%'