2017-05-28 7 views
0

これはインタビューで尋ねられました:inbuilt関数または分析関数を使用せずにOracleの特定の列でCOUNTを見つける方法inbuilt関数や解析関数を使用せずにOracleの特定の列でCOUNTを見つける方法はありますか?

私はちょうどCOUNT,COUNT(*)について聞いたことがありますが、これらのタイプのinbuiltキーワードはOracleにあります。

このクエリは、RDBMSなどのすべてのデータベースで機能するはずです。

+0

Whats TCS?あなたの質問は不明で、詳細を投稿する必要があります。 – Reeza

+0

あなたは会社/組織の名前をインタビューの質問とともに使用しないでください。 –

+1

私にはかなりばかげた質問のように聞こえる。 'count(*)'を使うのは、通常、テーブル内の行の総数を得る最も効率的な方法です。 –

答えて

2

インタビューの質問のように聞こえるのは、SQLで考えさせようとしているようですが、countが標準SQLであり長年続いているという事実を無視して、ボックス外で考える必要があるかもしれません。

ここには、select rownum, * from DBTABLE order by rownum desc;のようなものがあります。ここで、DBTABLEは、データベースのどのテーブルからでもカウントを取得しようとしています。

もちろん、すべてのデータを取得することで問題が発生する可能性があります。テーブルの列数が多すぎるかもしれませんが、面接官は面接官を探しています。 。

+1

正解私が間違っている場合、質問MAX(ROWNUM)ではありませんか? – user75ponic

+0

実際、「rownum」はオラクル現象に過ぎないように見えます。おそらくOPがテーブルに何らかの自動インクリメントIDカラムを持っているかどうかを調べなければならないかもしれませんし、MySQLの場合は 'User * from Users users desc desc limit 1'のようなものです。 –

+0

これは感謝します、ありがとう。 – user75ponic

0

実際のROWNUMの使用は、このようなものです:

SELECT ROWNUM、顧客*お客様に FROM WHERE last_nameのBYとcustomer_id> 4500 ORDER。

関連する問題