怎么对数据进行模糊查询? ( 积分: 100 )

  • 主题发起人 主题发起人 hot_key
  • 开始时间 开始时间
H

hot_key

Unregistered / Unconfirmed
GUEST, unregistred user!
sqlstr:='select * from electrician where name='+'"'+edit1.Text+'"';这一条语句怎么改才能将edit1.Text的内容进行模糊查询,如输入"日",则可查询出"日光"或"好日光"等.
请大侠指教。
 
sqlstr:='select * from electrician where name like '+'"%'+edit1.Text+'%"
 
sqlstr:='select * from electrician where name like '+'''%'+edit1.Text+'%'''
 
sqlstr:='select * from electrician where name like '+#39+#37+edit1.text+#37+#39;
或者 上面两位的都可以
 
用通配符进行匹配查询就可以了,但是对于不同的数据库来说,通配符一般来说是不同的,至于具体的通配符请详见相应的数据库说明。
 
like關鍵字的使用
 
select * from electrician where name like '+#39+'%'+edit1.text+'%'+#39
 
如果使用的是interbase数据库,还可以使用这个模糊查询,且不区分大小写
select * from XXX where XX CONTAINING 'key'
 
数字字符的模糊查询可能难点,如相邻数 5->6, 5->4 等等,
12345 可能找到 12445,13345,12346,72345 等等...
 
YES.. 用like , 字符前后都加上%号就OK了..
如果是数字的话,应该也可以把数字当成字符来查询吧..
 
Access数据库时的LIKE子句为:
'Name Like ' + '''*' + ed_edit1.Text + '*' + '''';
 
后退
顶部