9

DB で使用可能なすべてのテーブルを一覧表示し、行数で並べ替えおよびフィルター処理できるようにしたいと考えています。

4

1 に答える 1

13

簡単だ:

select table_name, count
from systable
where primary_root<>0 and creator=1
order by 1

または、列の数と名前を追加するのはどうですか?

select t.table_name, t.count rows, count(*) cols,
  list(c.column_name order by c.column_id) col_list
from systable t
left outer join syscolumn c on c.table_id=t.table_id
where t.primary_root<>0 and t.creator=1
group by t.table_name, t.count
order by 1

お役に立てれば...

詳細情報: systable と syscolumn は、SQL Anywhere 10 以降、従来の後方互換ビューのみであり、Sybase は代わりに新しいシステム テーブルを使用することを提案しています... バージョン 9 と 11 を使用しているため、これらを使用します。

于 2013-10-29T14:18:57.847 に答える