|
问:如何写在ACCESS查询中不包含某关键字的语句?如我使用<> "关键字"弄出来只是不等于这个关键字.如何才是不包含这个关键字?
答:
这个问题包括SQL语句的两个技术点,一个是LIKE模糊匹配,一个是IN(NOT IN)包含查询.
假设表:书目表
字段:
ID,自动编号,不重复
书名,文本
记录
ID,书名
1,ACCESS开发两百问
2,ACCESS VBA快速入门
3,EXCEL开发大全
4,WORD高手速成
SQL 语句:
包含关键字:开发
SELECT ID, 书名 FROM 书目表 WHERE 书名 LIKE "*开发*"
返回:1,3记录
不包含关键字:开发
这里不是使用NOT LIKE,事实上没有这样的语法,而应该使用NOT IN(不包含)关键字来实现,语句是:
SELECT ID, 书名 FROM 书目表 WHERE ID NOT IN(SELECT ID FROM 书目表 WHERE 书名 LIKE "*开发*")
返回:2,4记录
补充:如果排除多个关键字,可以在NOT IN()中的条件使用多个LIKE关键字,使用OR相联,如:书名 LIKE "*WORD*" OR 书名 LIKE "*EXCEL*" |
|