SELECT a.table_name
, c.comments
, a.column_name
, b.comments
, a.data_type
, a.data_length, a.column_id
, listagg(to_char(d.position)) within group(order by d.position) as position
FROM user_tab_cols a
LEFT JOIN user_col_comments b
ON a.table_name = b.table_name
AND a.column_name = b.column_name
LEFT JOIN user_tab_comments c
ON c.table_name = b.table_name
LEFT JOIN
(SELECT ucc.table_name
, ucc.column_name
, ucc.position
FROM user_cons_columns ucc
LEFT JOIN user_constraints uc
ON ucc.constraint_name = uc.constraint_name
AND uc.constraint_type = UPPER('p')
) d
ON d.table_name = b.table_name
AND d.column_name = b.column_name
where a.TABLE_NAME like 'TB%'
group by a.table_name
, c.comments
, a.column_name
, b.comments
, a.data_type
, a.data_length, a.column_id
ORDER BY a.table_name,
a.column_id asc ;
上述語句主要運用了listagg函數(shù)進行了重復的行合并處理,因為主鍵的行會重復,把position進行了合并。文章來源地址http://www.zghlxwxcb.cn/news/detail-682839.html
文章來源:http://www.zghlxwxcb.cn/news/detail-682839.html
到了這里,關(guān)于oracle導出表結(jié)構(gòu)語句(包含注釋加主鍵)的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!