SQL-Implementierung von LeetCode (181. Angestellte verdienen mehr als Manager)

SQL-Implementierung von LeetCode (181. Angestellte verdienen mehr als Manager)

[LeetCode] 181.Mitarbeiter verdienen mehr als ihre Manager

Die Mitarbeitertabelle enthält alle Mitarbeiter einschließlich ihrer Manager. Jeder Mitarbeiter hat eine ID und es gibt auch eine Spalte für die Manager-ID.

+----+-------+--------+-----------+
| ID | Name | Gehalt | ManagerID |
+----+-------+--------+-----------+
| 1 | Joe | 70000 | 3 |
| 2 | Heinrich | 80000 | 4 |
| 3 | Sam | 60000 | NULL |
| 4 | Max | 90000 | NULL |
+----+-------+--------+-----------+

Schreiben Sie für die Tabelle „Mitarbeiter“ eine SQL-Abfrage, die Mitarbeiter ermittelt, die mehr verdienen als ihre Vorgesetzten. In der obigen Tabelle ist Joe der einzige Mitarbeiter, der mehr verdient als sein Vorgesetzter.

+----------+
|Mitarbeiter |
+----------+
| Joe |
+----------+

Diese Frage gibt uns eine Mitarbeitertabelle, die die Gehaltsinformationen der Mitarbeiter und ihrer Manager enthält. Manager sind auch Mitarbeiter und ihre Manager-ID ist leer. Lassen Sie uns die Mitarbeiter herausfinden, deren Gehalt höher ist als das ihrer Manager. Dann ist es ein sehr einfaches Vergleichsproblem. Wir können zwei Instanzobjekte generieren, um sie durch ManagerId und Id zu interpolieren und dann die Bedingung einzuschränken, dass ein Gehalt höher ist als das andere:

Lösung 1:

Wählen Sie e1.Name aus Mitarbeiter e1
JOIN Mitarbeiter e2 ON e1.ManagerId = e2.Id
WO e1.Gehalt > e2.Gehalt;

Wir können Join auch überspringen und alle Bedingungen direkt in Where schreiben:

Lösung 2:

SELECT e1.Name FROM Mitarbeiter e1, Mitarbeiter e2
WO e1.ManagerId = e2.Id UND e1.Gehalt > e2.Gehalt;

Quellen:

https://leetcode.com/discuss/88189/two-straightforward-way-using-where-and-join

Dies ist das Ende dieses Artikels über die SQL-Implementierung von LeetCode (181. Angestellte verdienen mehr als Manager). Weitere relevante SQL-Implementierungen für Angestellte, die mehr verdienen als Manager, finden Sie in den vorherigen Artikeln von 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • SQL-Implementierung von LeetCode (196. Doppelte Postfächer löschen)
  • SQL-Implementierung LeetCode (185. Top drei der höchsten Gehälter in der Abteilung)
  • SQL-Implementierung von LeetCode (184. Das höchste Gehalt der Abteilung)
  • SQL-Implementierung von LeetCode (183. Kunden, die noch nie eine Bestellung aufgegeben haben)
  • SQL-Implementierung von LeetCode (182. Doppelte Postfächer)
  • SQL implementiert LeetCode (180. Fortlaufende Zahlen)
  • C++-Implementierung von LeetCode (179. Maximale Anzahl an Kombinationen)
  • SQL-Implementierung von LeetCode (197. Steigende Temperatur)

<<:  So verwenden Sie CSS, um das übergeordnete Container-Div mit img-Bildern zu füllen und die Containergröße anzupassen

>>:  So ändern Sie die Länge eines Eingabetextfelds entsprechend seinem Inhalt

Artikel empfehlen

So fragen Sie den minimal verfügbaren ID-Wert in der MySQL-Tabelle ab

Als ich mir heute die Laborprojekte ansah, stieß ...

Detaillierte Erklärung der allgemeinen Verwendung von MySQL-Abfragebedingungen

Dieser Artikel veranschaulicht anhand von Beispie...

So stellen Sie verschiedene Mausformen dar

<a href = "http: //" style = "c...

Detaillierte Erklärung der Verwendung von publicPath in Webpack

Inhaltsverzeichnis Ausgabe Ausgabepfad Ausgabe.öf...

Zusammenfassung mehrerer APIs oder Tipps in HTML5, die Sie nicht verpassen sollten

In früheren Blogbeiträgen habe ich mich auf einige...

Vue - benutzerdefinierte gekapselte Schaltflächenkomponente

Der benutzerdefinierte Kapselungscode der Vue-But...

Was ist HTML?

Geschichte der HTML-Entwicklung: HTML steht im En...

Detaillierte Erläuterung der Wissenspunkte zur asynchronen Programmierung in nodejs

Einführung Weil JavaScript standardmäßig ein Thre...

Analyse der zum Ausführen von Docker erforderlichen Berechtigungen

Zum Ausführen von Docker sind Root-Rechte erforde...

Xhtml-Sonderzeichensammlung

Name des Autors: &#160; no-break space = gesc...

Einfaches Anwendungsbeispiel für eine rekursive Vue-Komponente

Vorwort Ich glaube, dass viele Studenten bereits ...