统计起来不难: SELECT (count(id) +(SELECT count(id) FROM Tab2 where instr(f1 & f2 & f3 & ... & f23 ,"关键字")>0) +(SELECT count(id) FROM Tab3 where instr(f1 & f2 & f3 & ... & f23 ,"关键字")>0) ...... ) as 查询出的纪录条数 FROM Tab1 where instr(f1 & f2 & f3 & ... & f23 ,"关键字")>0如果要显示结果,那就得看显示什么了,事实上,对于给定的关键字,某些字段纯属累赘或无意义的东西,不一定都显示出来,建议根据情况做查询,不应当在所有字段中搜索。
用UNION 解决,但是,写起来麻烦. 形式如: SELECT * FROM ( SELECT * FROM TABLEA WHERE ..... UNION SELECT * FROM TABLE2 WHERE ..... . . . ) AS T 不过,我觉得还是用循环解决比较简单. 将ACCESS数据库中的所有数据表找到来,然后,第一层循环所有数据表. 第二层循环 取数据库中的所有字段 动态生成一条 WHERE 条件语句.
SELECT (count(id)
+(SELECT count(id) FROM Tab2 where instr(f1 & f2 & f3 & ... & f23 ,"关键字")>0)
+(SELECT count(id) FROM Tab3 where instr(f1 & f2 & f3 & ... & f23 ,"关键字")>0)
...... ) as 查询出的纪录条数
FROM Tab1 where instr(f1 & f2 & f3 & ... & f23 ,"关键字")>0如果要显示结果,那就得看显示什么了,事实上,对于给定的关键字,某些字段纯属累赘或无意义的东西,不一定都显示出来,建议根据情况做查询,不应当在所有字段中搜索。
形式如:
SELECT * FROM (
SELECT * FROM TABLEA WHERE .....
UNION
SELECT * FROM TABLE2 WHERE .....
.
.
.
) AS T
不过,我觉得还是用循环解决比较简单.
将ACCESS数据库中的所有数据表找到来,然后,第一层循环所有数据表.
第二层循环 取数据库中的所有字段 动态生成一条 WHERE 条件语句.