在oracle 数据库中 select * from all_Tables 会出来4000多个表。

我想在某个表中某一个字段找出一个字符串值。并显示出来包含那个值的表。
想写个select 语句。望高手指定。
除开系统用户。有3个自定义用户

all_tables显示用户有权限看到的所有的表,包括系统表

dba_tables是管理员可以看到的数据库中所有的表
user_tables是当前用户的所有表,用这个可以缩小查找的范围
如果知道表所在的用户可以
select * from all_tables where owner='用户名'
如果知道字段的名称可以
select * from all_tab_columns where owner='用户' and column_name='字段名'
如果用户、表、字段的名称都不知道,最好找下开发人员或者售后支持。
如果技术支持也没有,那就只能根据表或者字段的中文名称的名称猜了追问

用户、表、字段的名称都不知道。技术联系不上。有语句可以解决不

追答

这样的问题最好找技术支持或者之前负责维护的人寻求帮助,至少应该有数据字典。
用数据库技术就很难解决了,就只能从这些表里逐表查找。或者有应用系统的话,可以从应用系统角度分析

追问

如果知道用户呢。可以查出来不。

追答

如果知道表所在的用户可以缩小一点范围
select * from all_tables where owner='用户名'
如果知道字段的名称可以
select * from all_tab_columns where owner='用户' and column_name='字段名'

温馨提示:答案为网友推荐,仅供参考
相似回答