db2 怎么在所有表查询某个字段的信息

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了db2 怎么在所有表查询某个字段的信息相关的知识,希望对你有一定的参考价值。

比如在所有表中查询username=‘×××’,我要结果是所有表中有username这个字段且字段值等于xxx的所有结果

参考技术A 先差syscat.tables,然后查表对应的列,然后动态组合sql查询

MSSQL所有表中查找某个字段中的一个数据。100分悬赏

比如我想在 所有表里的字段中找查找aas
应该怎么写命令?

可以在我的百度空间里看:http://hi.baidu.com/fupx2008/blog/item/8b4841bf6124401619d81fb6.html
---查询一(所)表所有字段包含xx的信息
--1、查找所表所对应的字段
Select Distinct A.name As columnname,object_name(A.id)As tablename Into T_Search
From Syscolumns A,Sysobjects B, Systypes C
Where A.id=B.ID And B.xtype='u' --And B.Name='Dept' ---如果只查一个表,把 And B.Name='Dept' 加上,并把"Dept"换成你的表
And C.name in('varchar','nvarchar','char','nchar','text','ntext')
And object_name(A.id)<>'T_Search' ---排除刚刚生成的表T_Search
go

---2、创建函数
Create function Search_Info(@tableName varchar(1000),@keyword varchar(1000))
Returns varchar(8000)
As
Begin
Declare @sql varchar(8000)
Set @sql='Select * From '+@tableName +' Where 1=1'
Select @sql=@sql+' Or '+ columnname +' Like ''%'+@keyword+'%''' From T_Search ---如果是精确查找就把%去掉
Where tablename=@tablename
Return Replace(@sql,'1=1 Or','')
End
go

---3、查找所要包含的信息
Declare @Exec_SQL varchar(8000)
Set @Exec_SQL=(Select dbo.Search_Info(tableName,'aas') From T_Search Group By tablename)
Exec(@Exec_SQL)

---4、删除表和函数
/*
Drop Table T_Search
Drop function dbo.Search_Info
*/
参考技术A select attr_name
from (select * from tab) -- 找出所有的表
where attr_name = 'aas'

语法应该的改改,想法是找出所有的表后就搜索。
怎么样join所有的表就看你自己了。

以上是关于db2 怎么在所有表查询某个字段的信息的主要内容,如果未能解决你的问题,请参考以下文章

怎样用SQL查询一个表的所有字段

MSSQL所有表中查找某个字段中的一个数据。100分悬赏

db2如何实现用一张表的某个字段更新另一张表的相应字段。

MYSQL如何查询表中字段类型TYPE=date的字段信息?

如何查询SqlServer和MySql数据库中某个数据库下面所有的视图信息和存储过程的信息,在java中操作

如何在mysql中查询所有表是不是包含某个字段