SQL like 查询注意事项

    当页面有搜索的时候,少不了要使用到模糊查询。

 

    LIKE 的语法如下:

    SELECT "栏位名" 
    FROM "表格名" 
    WHERE "栏位名" LIKE {套式}

    

    

    {套式} 经常包括野卡 (wildcard). 以下是几个例子:

  • 'A_Z': 所有以 'A' 起头,另一个任何值的字原,且以 'Z' 为结尾的字串。 'ABZ' 和 'A2Z' 都符合这一个模式,而 'AKKZ' 并不符合 (因为在 A 和 Z 之间有两个字原,而不是一个字原)。

  • 'ABC%': 所有以 'ABC' 起头的字串。举例来说,'ABCD' 和 'ABCABC' 都符合这个套式。

  • '%XYZ': 所有以 'XYZ' 结尾的字串。举例来说,'WXYZ' 和 'ZZXYZ' 都符合这个套式。

  • '%AN%': 所有含有 'AN' 这个套式的字串。举例来说, 'LOS ANGELES' 和 'SAN FRANCISCO' 都符合这个套式。
  •  

        今天在构造SQL查询语句的时候,一直提示语法错误,下次要记住了:

        使用like的时候,SELECT * 
        FROM Store_Information 
        WHERE store_name LIKE '%AN%
    '  注意: 要加单引号,否则,语法会出错滴...

     

    还有一个问题,当like组合查询超过4的时候,读出的记录就不正确了,这个暂时先作为一个bug提给自己,这块儿功能完成了再好好研究一下到底是like的原因,还是查询字段的问题。

     

    另外,我们也可以做到参数化传递,使用like {@parm}  构造的parm 如 "%" + value + "%",这样的形式。

     

     

    还有一点要说明的是:使用LIKE关键字的时候,参数不要使用char型的数据,这会是输入的数据带有尾随空格,从而使查询失败。

    具体原因参见: http://www.techrss.cn/html/2008/11-22/177688.htm 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值