1

列の総数、個々の列名、およびそれに対応するオラクルのデータ型を取得する方法を知りたいです。例えば

SQL := 'SELECT UT.TABLESPACE_NAME, UT.TABLE_NAME, UT.STATUS, UT.NUM_ROWS, UT.LAST_ANALYZED, 
(select count(1) from USER_TAB_COLS utc where utc.table_name = UT.TABLE_NAME) column_count
from USER_TABLES ut;'

次に、手順は次の情報を表示できるはずです。

合計列 = 6

列 1: TABLESPACE_NAME
データ型: Varchar2

列 2: TABLE_NAME
データ型: Varchar2

列 3: ステータス
データ型: Varchar2

列 4: NUM_ROWS
データ型: 数値

列 5: LAST_ANALYZED
データ型: DATE

列 6: COLUMN_COUNT
データ型: 数値

SQL を変更すると、それに応じて結果が変更されます。

4

1 に答える 1

1
SELECT UT.TABLESPACE_NAME
, UT.TABLE_NAME
, UT.STATUS
, UT.NUM_ROWS
, UT.LAST_ANALYZED
, utc.column_name
, utc.data_type
, utc.data_length
, column_id ColumnNo
, max(utc.column_id) over (partition by ut.table_name) NoColumns
from USER_TABLES ut
inner join USER_TAB_COLS utc
on utc.table_name = ut.table_name
order by ut.tablespace_name
, ut.table_name
, utc.column_id
;
于 2013-10-26T18:23:06.610 に答える