Inhaltsverzeichnis
Oracle ORDER BY子句的例子
Beispiel einer Oracle ORDER BY-Klausel
Heim Datenbank Oracle So sortieren Sie Abfrageergebnisse in Oracle

So sortieren Sie Abfrageergebnisse in Oracle

Jan 13, 2022 am 11:33 AM
oracle

In Oracle können Sie die Abfrage mit der Anweisung „SELECT“ und der Klausel „ORDER BY“ sortieren. Sie können die Abfrageergebnismenge einer oder mehrerer Spalten in aufsteigender oder absteigender Reihenfolge sortieren FROM Datentabellenname. ORDER BY Feldname [ASC|DESC]".

So sortieren Sie Abfrageergebnisse in Oracle

Die Betriebsumgebung dieses Tutorials: Windows 7-System, Oracle 11g-Version, Dell G3-Computer.

In Oracle können Sie die „SELECT“-Anweisung und die „ORDER BY“-Klausel verwenden, um eine Abfragesortierung durchzuführen.

In Oracle werden Zeilendatensätze in einer nicht festgelegten Reihenfolge in der Tabelle gespeichert, unabhängig von der Reihenfolge, in der die Zeilen in die Datenbank eingefügt werden. Um Zeilendatensätze nach Spalte in aufsteigender oder absteigender Reihenfolge abzufragen, müssen Sie die Oracle-Datenbank explizit anweisen, wie sortiert werden soll.

Möglicherweise möchten Sie beispielsweise alle Ihre Kunden alphabetisch nach Namen auflisten oder alle Ihre Kunden in der Reihenfolge vom niedrigsten zum höchsten Kreditlimit anzeigen.

Um die abgefragten Daten zu sortieren, fügen Sie die Klausel ORDER BY wie folgt zur SELECT-Anweisung hinzu. ORDER BY子句添加到SELECT语句中。

ORDER BY子句可以按升序或降序对一列或多列的结果集进行排序。

语法:

SELECT
    字段名,
FROM
    table_name
ORDER BY
    字段名 [ASC | DESC] [NULLS FIRST | NULLS LAST]
Nach dem Login kopieren

要按列排序结果集,可以在ORDER BY子句之后列出该列。

按照列名是一个排序顺序,可以是:

  • ASC 表示按升序排序

  • DESC 表示按降序排序

默认情况下,无论是否指定ASCORDER BY子句都按升序对行进行排序。如果要按降序对行进行排序,请明确使用DESC

NULLS FIRST在非NULL值之前放置NULL值,NULLS LAST在非NULL值之后放置NULL值。

ORDER BY子句可以按多列对数据进行排序,每列可能有不同的排序顺序。

请注意,ORDER BY子句总是SELECT语句中的最后一个子句。

Oracle ORDER BY子句的例子

下面将使用示例数据库中的customers表进行演示。

So sortieren Sie Abfrageergebnisse in Oracle

以下语句从客户(customers)表中检索客户的:name, addresscredit limit

SELECT name, address, credit_limit FROM customers;
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

So sortieren Sie Abfrageergebnisse in Oracle

正如截图中所看到的,行记录的顺序是未指定的。

1、按列排序行示例

要按照字母顺序按升序排列客户名称,请使用以下语句:

SELECT name,address,credit_limit
FROM customers
ORDER BY name ASC;
Nach dem Login kopieren

执行上面示例代码,得到以下结果 -

So sortieren Sie Abfrageergebnisse in Oracle

ASC指示Oracle按升序对行进行排序。但是ASC是可选的,如果省略,则在默认情况下,ORDER BY子句按指定的列按升序对行进行排序。

因此,下面的表达式:

ORDER BY name ASC
Nach dem Login kopieren

等效于 -

ORDER BY name
Nach dem Login kopieren

要按字母顺序降序排列客户名称,请在ORDER BY子句中的列名之后显式使用DESC,如下所示:

SELECT name, address, credit_limit
FROM customers
ORDER BY name DESC;
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

So sortieren Sie Abfrageergebnisse in Oracle

2、按多个列排序行示例

要对多列进行排序,可以用逗号分隔ORDER BY子句中的每列。

请参阅示例数据库中的以下联系人(contacts)表。

例如,要按first_name进行按升序排序,并按降序对last_name列进行排序,请使用以下语句:

SELECT first_name, last_name
FROM contacts
ORDER BY first_name, last_name DESC;
Nach dem Login kopieren

执行上面示例代码,可以看到如下结果 -

So sortieren Sie Abfrageergebnisse in Oracle

从上面截图中可以看到,contact_id91311这两条记录的first_name的值相同,last_name的值是以降序来排列的。

在这个例子中,Oracle首先按first_name升序对行进行排序,以创建初始结果集。 然后Oracle按降序对last_name

Die ORDER BY-Klausel kann die Ergebnismenge einer oder mehrerer Spalten in aufsteigender oder absteigender Reihenfolge sortieren.

Syntax:

SELECT name, credit_limit,address
FROM customers
ORDER BY 2 DESC, 1;
Nach dem Login kopieren
Nach dem Login kopieren
So sortieren Sie Abfrageergebnisse in OracleUm die Ergebnismenge nach einer Spalte zu sortieren, können Sie die Spalte nach der ORDER BY-Klausel auflisten.

Es handelt sich um eine Sortierreihenfolge nach dem Spaltennamen, die wie folgt lauten kann:

  • 🎜ASC bedeutet Sortierung in aufsteigender Reihenfolge 🎜
  • 🎜DESC bedeutet Sortierung in absteigender Reihenfolge🎜
🎜Standardmäßig gilt, unabhängig davon, ob ASC angegeben ist oder nicht, < code>ORDER BY-Klauseln sortieren alle die Zeilen in aufsteigender Reihenfolge. Wenn Sie die Zeilen in absteigender Reihenfolge sortieren möchten, verwenden Sie explizit DESC.
🎜🎜NULLS FIRST platziert NULL-Werte vor Nicht-NULL-Werten, NULLS LAST davor non-< Platzieren Sie den NULL-Wert nach dem code>NULL-Wert. 🎜🎜Die ORDER BY-Klausel kann Daten nach mehreren Spalten sortieren, und jede Spalte kann eine andere Sortierreihenfolge haben. 🎜🎜Bitte beachten Sie, dass die ORDER BY-Klausel immer die letzte Klausel in der SELECT-Anweisung ist. 🎜

Beispiel einer Oracle ORDER BY-Klausel

🎜Im Folgenden wird zur Demonstration die Tabelle customers in der Beispieldatenbank verwendet. 🎜🎜So sortieren Sie Abfrageergebnisse in Oracle🎜🎜Die Folgende Anweisung ruft den Kunden ab: name, adresse und Kreditlimit aus der Kundentabelle (customers): 🎜
SELECT name, credit_limit,address
FROM customers
ORDER BY credit_limit DESC, name;
Nach dem Login kopieren
Nach dem Login kopieren
🎜 Führen Sie die obige Abfrageanweisung aus und erhalten Sie die folgenden Ergebnisse: 🎜🎜 So sortieren Sie Abfrageergebnisse in Oracle🎜🎜Wie Sie im Screenshot sehen können, ist die Reihenfolge der Zeilendatensätze nicht festgelegt. 🎜🎜1. Beispiel für das Sortieren von Zeilen nach Spalte🎜🎜Um Kundennamen in aufsteigender Reihenfolge alphabetisch zu sortieren, verwenden Sie die folgende Anweisung: 🎜
SELECT country_id, city, state
FROM locations 
ORDER BY state DESC;
Nach dem Login kopieren
Nach dem Login kopieren
🎜Führen Sie den obigen Beispielcode aus und erhalten Sie die folgenden Ergebnisse: 🎜🎜So sortieren Sie Abfrageergebnisse in Oracle🎜🎜ASC weist Oracle an, die Zeilen in aufsteigender Reihenfolge zu sortieren. Aber ASC ist optional, und wenn es weggelassen wird, sortiert die ORDER BY-Klausel standardmäßig die Zeilen nach der angegebenen Spalte in aufsteigender Reihenfolge. 🎜🎜Daher ist der folgende Ausdruck: 🎜
SELECT country_id, city, state
FROM
    locations
ORDER BY
    state ASC NULLS FIRST;
Nach dem Login kopieren
Nach dem Login kopieren
🎜 äquivalent zu -🎜
SELECT country_id, city, state
FROM
    locations
ORDER BY
    state ASC NULLS LAST;
Nach dem Login kopieren
Nach dem Login kopieren
🎜 Um Kundennamen in absteigender alphabetischer Reihenfolge zu sortieren, verwenden Sie explizit nach dem Spaltennamen im <code>ORDER BY-Klauselcode> DESC, wie unten gezeigt: 🎜
SELECT customer_id, name
FROM customers
ORDER BY UPPER( name );
Nach dem Login kopieren
Nach dem Login kopieren
🎜Führen Sie die obige Abfrageanweisung aus und erhalten Sie die folgenden Ergebnisse: 🎜🎜So sortieren Sie Abfrageergebnisse in Oracle🎜🎜2. Beispiel für das Sortieren von Zeilen nach mehreren Spalten🎜🎜Um mehrere Spalten zu sortieren, können Sie jede Spalte in der ORDER BY-Klausel durch ein Komma trennen. 🎜🎜Sehen Sie sich die folgende Kontakttabelle (contacts) in der Beispieldatenbank an. 🎜🎜Um beispielsweise nach Vorname in aufsteigender Reihenfolge und nach der Spalte Nachname in absteigender Reihenfolge zu sortieren, verwenden Sie die folgende Anweisung: 🎜rrreee🎜Führen Sie den obigen Beispielcode aus Siehe Zum folgenden Ergebnis: 🎜🎜So sortieren Sie Abfrageergebnisse in Oracle 🎜🎜Wie Sie dem Screenshot oben entnehmen können, ist contact_id der first_name der beiden Datensätze 91 und 311< /code> Die Werte sind gleich und die Werte von <code>last_name sind in absteigender Reihenfolge angeordnet. 🎜🎜In diesem Beispiel sortiert Oracle zunächst die Zeilen nach first_name in aufsteigender Reihenfolge, um den ersten Ergebnissatz zu erstellen. Oracle sortiert dann die anfängliche Ergebnismenge nach last_name in absteigender Reihenfolge. 🎜🎜Siehe Ergebnisse, die dem folgenden ähneln: 🎜🎜🎜🎜🎜In diesem Ergebnis oben: 🎜
  • 首先,按first_name升序排序。
  • 其次,如果两个名字相同,按last_name降序排列,如Daniel GlassDaniel CostnerDianne SenDianne DerekDoretha TylerDorotha Wong

3、按列位置排序行示例

不需要指定用于排序数据的列名称。如果您愿意,可以使用ORDER BY子句中列的位置。

请参考下语句 -

SELECT name, credit_limit,address
FROM customers
ORDER BY 2 DESC, 1;
Nach dem Login kopieren
Nach dem Login kopieren

在这个例子中,name列的位置是1credit_limit列的位置是2。相当于以下查询语句 -

SELECT name, credit_limit,address
FROM customers
ORDER BY credit_limit DESC, name;
Nach dem Login kopieren
Nach dem Login kopieren

ORDER BY子句中,使用这些列位置来指示Oracle对行进行排序。

4、用NULL值排序行的示例

请参阅示例数据库中的以下地区(locations)表:

So sortieren Sie Abfrageergebnisse in Oracle

以下语句按城市(city)和州(state)检索位置并对其进行排序:

SELECT country_id, city, state
FROM locations 
ORDER BY state DESC;
Nach dem Login kopieren
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

So sortieren Sie Abfrageergebnisse in Oracle

state列有NULL值,这意味着state数据与某些城市(例如:Beijing, HiroshimaLondon)无关。

当使用非NULL值对混合NULL进行排序时,Oracle允许指定哪个应该首先出现。

例如,以下语句按升序对state列进行排序,并首先将NULL值放置在前面。

SELECT country_id, city, state
FROM
    locations
ORDER BY
    state ASC NULLS FIRST;
Nach dem Login kopieren
Nach dem Login kopieren

要放置NULL值在后面,可以使用NULLS LAST,如下面的语句所示:

SELECT country_id, city, state
FROM
    locations
ORDER BY
    state ASC NULLS LAST;
Nach dem Login kopieren
Nach dem Login kopieren

执行上面示例查询语句,得到以下结果:

So sortieren Sie Abfrageergebnisse in Oracle

5、按函数或表达式排序数据

ORDER BY子句可在一列上应用一个函数,例如字符串函数,数学函数等,并按函数的结果对数据进行排序。

例如,以下语句使用ORDER BY子句中的UPPER()函数来区分客户名称的大小写:

SELECT customer_id, name
FROM customers
ORDER BY UPPER( name );
Nach dem Login kopieren
Nach dem Login kopieren

执行上面查询语句,得到以下结果 -

So sortieren Sie Abfrageergebnisse in Oracle

推荐教程:《Oracle教程

Das obige ist der detaillierte Inhalt vonSo sortieren Sie Abfrageergebnisse in Oracle. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So überprüfen Sie die Tabellenraumgröße von Oracle So überprüfen Sie die Tabellenraumgröße von Oracle Apr 11, 2025 pm 08:15 PM

Um die Oracle -Tablespace -Größe abzufragen, führen Sie die folgenden Schritte aus: Bestimmen Sie den Namen Tablespace, indem Sie die Abfrage ausführen: Wählen Sie Tablespace_Name aus dba_tablespaces. Abfragen Sie die Tablespace -Größe durch Ausführen der Abfrage: Summe (Bytes) als Total_Size, sum (bytes_free) als verfügbare_space, sum

So importieren Sie die Oracle -Datenbank So importieren Sie die Oracle -Datenbank Apr 11, 2025 pm 08:06 PM

Datenimportmethode: 1. Verwenden Sie das SQLLoader -Dienstprogramm: Datendateien vorbereiten, Steuerdateien erstellen und SQLLOADER ausführen. 2. Verwenden Sie das IMP/Exp -Tool: Daten exportieren, Daten importieren. Tipp: 1. Empfohlener SQL*Loader für Big -Data -Sets; 2. Die Zieltabelle sollte vorhanden und die Spaltendefinition entspricht. 3. Nach dem Import muss die Datenintegrität überprüft werden.

Wie man die Oracle -Installation deinstalliert Wie man die Oracle -Installation deinstalliert Apr 11, 2025 pm 08:24 PM

Deinstallieren Sie die Methode für Oracle -Installationsfehler: Schließen Sie den Oracle -Service, löschen Sie Oracle -Programmdateien und Registrierungsschlüssel, Deinstallieren Sie Oracle -Umgebungsvariablen und starten Sie den Computer neu. Wenn das Deinstall fehlschlägt, können Sie das Oracle Universal Deinstall -Tool manuell deinstallieren.

Wie man Orakel wiedergegeben Wie man Orakel wiedergegeben Apr 11, 2025 pm 07:33 PM

Oracle bietet mehrere Deduplication -Abfragemethoden: Das bestimmte Schlüsselwort gibt für jede Spalte einen eindeutigen Wert zurück. Die Gruppe nach Klausel gruppiert die Ergebnisse und gibt für jede Gruppe einen nicht repetitiven Wert zurück. Das eindeutige Schlüsselwort wird verwendet, um einen Index mit nur eindeutigen Zeilen zu erstellen, und das Abfragen des Index wird automatisch dedupliziert. Die Funktion row_number () weist eindeutige Zahlen und filtert Ergebnisse aus, die nur Zeile 1 enthalten. Die Funktion min () oder max () gibt nicht repetitive Werte einer numerischen Spalte zurück. Der Schnittbetreiber gibt die gemeinsamen Werte der beiden Ergebnissätze zurück (keine Duplikate).

So erstellen Sie eine Tabelle in Oracle So erstellen Sie eine Tabelle in Oracle Apr 11, 2025 pm 08:00 PM

Das Erstellen einer Oracle -Tabelle umfasst die folgenden Schritte: Verwenden Sie die Tabellensyntax erstellen, um Tabellennamen, Spaltennamen, Datentypen, Einschränkungen und Standardwerte anzugeben. Der Tabellenname sollte präzise und beschreibend sein und 30 Zeichen nicht überschreiten. Der Spaltenname sollte beschreibend sein und der Datentyp gibt den in der Spalte gespeicherten Datentyp an. Die Nicht -Null -Einschränkung stellt sicher, dass Nullwerte in der Spalte nicht zulässig sind, und die Standardklausel gibt die Standardwerte für die Spalte an. Primärschlüsseleinschränkungen zur Ermittlung des eindeutigen Datensatzes der Tabelle. Die Einschränkung der Fremdschlüssel gibt an, dass sich die Spalte in der Tabelle auf den Primärschlüssel in einer anderen Tabelle bezieht. Siehe die Erstellung der Schülertabellenstudenten, die Primärschlüssel, eindeutige Einschränkungen und Standardwerte enthält.

So sehen Sie den Instanznamen von Oracle So sehen Sie den Instanznamen von Oracle Apr 11, 2025 pm 08:18 PM

Es gibt drei Möglichkeiten, Instanznamen in Oracle anzuzeigen: Verwenden Sie den "SQLPLUS" und "Instance_name aus v $ Instance". Befehle in der Befehlszeile. Verwenden Sie den "show Instance_name;" Befehl in SQL*Plus. Überprüfen Sie die Umgebungsvariablen (Oracle_sid unter Linux) über den Task -Manager des Betriebssystems, den Oracle Enterprise Manager oder über das Betriebssystem.

So verschlüsseln Sie die Oracle -Ansicht So verschlüsseln Sie die Oracle -Ansicht Apr 11, 2025 pm 08:30 PM

Mit der Verschlüsselung von Oracle View können Sie Daten in der Ansicht verschlüsseln und so die Sicherheit sensibler Informationen verbessern. Die Schritte umfassen: 1) Erstellen des Master -Verschlüsselungsschlüssels (MEK); 2) Erstellen einer verschlüsselten Ansicht, der Ansicht und der Verschlüsselung der Ansicht und der MEK angeben; 3) Benutzern Sie die Benutzer, auf die verschlüsselte Ansicht zuzugreifen. Wie verschlüsselte Ansichten funktionieren: Wenn ein Benutzer nach einer verschlüsselten Ansicht nachgefragt wird, verwendet Oracle MEK, um Daten zu entschlüsseln und sicherzustellen, dass nur autorisierte Benutzer auf lesbare Daten zugreifen können.

Wie man verstümmelte Code in Oracle löst Wie man verstümmelte Code in Oracle löst Apr 11, 2025 pm 10:09 PM

Oracle -verstümmelte Probleme können gelöst werden, indem der Datenbankzeichen gesetzt wird, um sicherzustellen, dass sie mit den Daten übereinstimmen. Legen Sie den Client -Zeichen für die Datenbank fest. Konvertieren Sie Daten oder ändern Sie Spaltenzeichen -Sets so, dass sie Datenbankzeichen -Sets übereinstimmen. Verwenden Sie Unicode -Zeichensätze und vermeiden Sie Multibyte -Zeichensätze. Überprüfen Sie, ob die Spracheinstellungen der Datenbank und des Clients korrekt sind.

See all articles