在网站后台的开发过程中,站内搜索或是查询功能是用得比较多的,就要从数据库里面找寻与客户所输入的关键词相类似的文章或是新闻,把这些文章调出来,说白了,就是把有这些类似的记录显示出来,那是如何做到的呢?
其实很简单,使用查询语句即可搞定:select * from 数据库表 where 文章内容或文章标题 like 关键词,今天不是研究这个,主要是说说易发生错误的细节,数据库access与sql server两者在通配符用法上有何区别,要注意些什么。
再回到上面的那句sql语句,假如数据库表为news,新闻内容的字段名是content,标题字段名为title,用户输入了“产品”两个字,那sql语句为:select * from news where content like "%产品%",记住,除了产品两字是中文外,其它的都是英文的半角状态,当然了,实际的网站建设过程中,产品两字会被变量或函数代替。
如果使用的是access,则like的通配符的整个写法是这样的:like "*产品*",百分号在这儿是没有用的,千万记住。
如果使用的是sql server,则like写法为:like "%产品%",星号在这儿是没有用的,当然也适合于mysql数据库。
总结一下,access里like的通配符用法中,问号表示任何单一的字符,星号表示零个或多个字符,井号表示任何一个数字,使用like时,access使用星号,sql server使用百分号,互换过来不行。