2012-04-10 11 views

答えて

27
select count(*) 
from user_tab_columns 
where table_name='MYTABLE' --use upper case 
+0

テーブルuser_tab_columnsに何もありません。 –

+0

は私のためには機能しませんでした。 – BekaBot

+0

テーブル名は大文字と小文字が区別されます。 –

4

たぶん、このような何か:

SELECT count(*) FROM user_tab_columns WHERE table_name = 'FOO' 

これは、テーブルFOOの列の数をカウントします

次のことが可能また、単に

所有者は、スキーマやノートつまり
select count(*) from all_tab_columns where owner='BAR' and table_name='FOO'; 

テーブル名は大文字です

+0

値をカウントするだけでなく、特定の列の値も必要な場合は、簡単に追加できますか? – zygimantus

5

古い質問 - しかし、私は最近、カウント...ここに行と一緒にこれを必要としては、両方のクエリである - DESC数行のソート順:

select t.owner, t.table_name, t.num_rows, count(*) 
from all_tables t left join all_tab_columns c on t.table_name = c.table_name 
where num_rows is not null 
group by t.owner, t.table_name, t.num_rows 
order by t.num_rows desc; 
関連する問題