加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle – 具有前缀的查询中的所有列的别名

发布时间:2020-12-12 13:10:26 所属栏目:百科 来源:网络整理
导读:可以在选择中使用前缀来别名所有列? 我在Oracle数据库中有一组表,我需要连接在一起,而且大多数表具有相同的列名.我想要这样的东西 select MAGIC_ADD_PREFIX("PREFIX",*) from TABLE 并有一个结果 +---------+----------+----------+|PREFIX_ID|PREFIX_FOO|P
可以在选择中使用前缀来别名所有列?
我在Oracle数据库中有一组表,我需要连接在一起,而且大多数表具有相同的列名.我想要这样的东西
select MAGIC_ADD_PREFIX("PREFIX",*) from TABLE

并有一个结果

+---------+----------+----------+
|PREFIX_ID|PREFIX_FOO|PREFIX_BAR|
+---------+----------+----------+
|...      |          |          |

自动提款机我唯一可以想到的是一些奇怪的样子

select ID PREFIX_ID,FOO PREFIX_FOO,BAR PREFIX_BAR from TABLE

但它是如此地狱和容易出错的丑陋

====进一步说明====

的问题

select TABLE.*,...

是我使用java jdbc驱动程序来检索列,而java.sql.ResultSet方法(resultset.getInt(“COLUMNNAME”),.getString(“COLUMNNAME”)…)不支持语法“ TABLENAME.COLUMNAME”.

如果我做(简化,没有错误呃…)

ResultSet rs = mkResultSet("select * from table_a,table_b");
rs.next();
System.out.println(rs.getInt("table_a.id"));

我收到一个无效的列名作为消息的SQLException

你可以做
select a.*,b.* from table_a a,table_b b where.....

或者您可以创建对基表的视图,如

create view a_vw as select a.col1 a_col1,a.col2 a_col2...

您可以通过从user_tab_columns中选择列名称来生成用于创建a_vw的SQL

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读