SQL的技能有限所以请耐心等待: - )
我有一个包含多个模式的Oracle数据库,其中大多数模式都包含一个名为C_USERNAMES
的表。
我希望编写一个查询,它只查询包含一个名为C_USERNAMES的表的模式,并根据一个或多个列数据返回行。
我可以从SYS帐户运行它。
理想情况下,我希望将数据作为表单的单个格式化报告返回(假设Name
和Address
是C_USERNAMES
表中的列名称:
Schema Name Address
-----------------------
SCH001 Dave Station Road
SCH006 Paul Main Ave
etc
我知道我需要某种嵌套查询或加入/联合,但是我无法解决任何让它工作的问题。我希望查询是智能的,因为它可以确定哪些模式包含一个表C_USERNAMES。
感谢您的任何指示,如果这是一个基本问题,请原谅我。
答案 0 :(得分:2)
整个设置吓到我了。您永远不应该以{{1}}运行查询。没有一个SQL知识有限的人应该去SYS
附近的任何地方。在不同模式中包含您希望在单个查询中组合在一起的信息的表意味着存在显着的规范化问题。拥有有限SQL技能的人构建动态SQL只会增加一系列问题。
也就是说,您可以使用动态SQL构建所需的查询。像这样的东西可能接近你想要的东西。
SYS