毕业论文开发语言企业开发JAVA技术.NET技术WEB开发Linux/Unix数据库技术Windows平台移动平台嵌入式论文范文英语论文
您现在的位置: 毕业论文 >> 数据库 >> 正文

DB2查询多张表中特定的某个内容

更新时间:2013-2-27:  来源:毕业论文

DB2查询多张表中特定的某个内容
有一数据库有9万多张表
我想查询这表中的关键字段NAME为小王的所有记录


这个SQL语句该如何写呢?
怎样才能降低查询的时候不影响整体运行速度呢?

select * from table1 where name= '小王'union allselect * from table2 where name= '小王'union allselect * from table3 where name= '小王'union all.... union allselect * from table10000 where name= '小王'

要用SP,取得所有表名,根据表名取得字段名,一个一个循环判断

要从那么多表里去取数据,我想性能牺牲是免不了的。我觉得讨论怎么省事还可以。

我有一个思路,我没实验过,但我觉得是可行的。毕业论文 
先从SYSIBM.SYSTABLES中选出你要查询的表,然后一个一个循环,组合字符串,即叠加(SELECT NAME FROM 表明 UNION ALL ),最后用隐式查询然后返回结果集!

当然,也可以循环tables做单个select,呵呵。也是隐式的。。。

访问系统表,得到所有表名。然后循环处理每条记录(系统表中的每个记录也就是一个表)
然后对每个表名,在程序中生成相应的 select * from " + rs.fields("tableName") 根据返回的结果判断是否包含 小王

1.先从SYSIBM.SYSTABLES中选出你要查询的表
  List systabList=session.createQuery(SYSIBM.SYSTABLES)
2.根据查询的结果拼出SQL,然后把些SQL存在一张表中MY_QUERY

[1] [2] 下一页

设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©youerw.com 优尔论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。