2017-05-28 4 views
0

Dies wurde in einem Interview gefragt: Wie finden Sie COUNT auf einer bestimmten Spalte in Oracle ohne Verwendung eingebauter Funktionen oder analytische Funktionen?Wie finden Sie COUNT für eine bestimmte Spalte in Oracle, ohne eingebaute Funktionen oder analytische Funktionen zu verwenden?

Ich habe gerade von der COUNT,COUNT(*) gehört, aber wir haben diese Art von eingebauten Schlüsselwort in Oracle zu finden.

Und diese Abfrage sollte für jede Datenbank wie RDBMS funktionieren.

+0

Was ist TCS? Ihre Frage ist unklar und Sie sollten weitere Details veröffentlichen. – Reeza

+0

sollten Sie den Namen der Firma/Organisation nicht zusammen mit ihren Interviewfragen verwenden. –

+1

Klingt wie eine ziemlich dumme Frage für mich. Die Verwendung von 'count (*)' ist normalerweise der effizienteste Weg, um die Gesamtanzahl der Zeilen in einer Tabelle zu erhalten. –

Antwort

2

Es klingt wie die Interviewfrage versucht, Sie in SQL denken zu lassen, und dass Sie vielleicht über den Tellerrand denken müssen, die Tatsache ignorierend, dass count Standard-SQL ist und seit Jahren ist.

Hier ist ein Vorschlag, vielleicht so etwas wie select rownum, * from DBTABLE order by rownum desc; wo DBTABLE ist welche Tabelle in der Datenbank, die Sie versuchen, eine Anzahl von zu bekommen.

Natürlich Probleme mit dem Erhalten all dieser Daten, vielleicht die Anzahl der Spalten in der Tabelle ist riesig, aber Interviewer sucht nach Interviewpartner zu denken.

+1

Korrigieren Sie mich Wenn falsch ist, ist nicht die Abfrage MAX (ROWNUM)? – user75ponic

+0

Eigentlich sieht es so aus, dass 'rownum' nur ein Orakelphänomen ist. Vielleicht müsste das OP herausfinden, ob die Tabelle irgendeine Art von automatisch inkrementierender ID-Spalte hat, und dann das Max davon tun, etwa so wie 'Select * von Users order by UserID desc limit 1' für MySQL. –

+0

Das macht Sinn, danke. – user75ponic

0

Die tatsächliche rownum Verwendung ist wie folgt:.

SELECT ROWNUM, Kunden * FROM Kunden WHERE customer_id> 4500 ORDER BY nachname;

Verwandte Themen