2017-05-28 19 views
0

在訪談中提到了這個問題:如何在不使用任何內置函數或任何分析函數的情況下在Oracle的特定列上查找COUNT?如何在不使用任何內置函數或任何分析函數的情況下在Oracle的特定列上查找COUNT?

我剛剛聽說COUNT,COUNT(*),但我們發現在Oracle中使用這些類型的內置關鍵字。

而且這個查詢應該適用於像RDBMS這樣的每個數據庫。

+0

什麼是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列,然後執行最大值,例如'select * from Users order by UserID desc limit 1' for MySQL。 –

+0

這很有道理,謝謝。 – user75ponic

0

的實際使用ROWNUM是這樣的:

SELECT ROWNUM,客戶* 客戶 WHERE CUSTOMER_ID> 4500 ORDER BY姓氏。

相關問題