12
在選擇中,可以使用前綴別名所有列嗎? 我在Oracle數據庫中有一組表,我需要將它們連接在一起,並且它們中的大多數具有相同的列名。我想有這樣的事情以前綴形式查詢中的所有列別名
select MAGIC_ADD_PREFIX("PREFIX", *) from TABLE
,並有像
+---------+----------+----------+
|PREFIX_ID|PREFIX_FOO|PREFIX_BAR|
+---------+----------+----------+
|... | | |
ATM結果我能想到的唯一的事情是什麼chumsky喜歡
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
的消息
dup:http://stackoverflow.com/questions/329931/sql-select-join-is-it-possible-to-前綴全部列 - 作爲前綴 – dforce 2016-07-28 07:50:30