Heim > Datenbank > MySQL-Tutorial > Wie führe ich eine Minus-Operation in MySQL mit NOT IN durch?

Wie führe ich eine Minus-Operation in MySQL mit NOT IN durch?

Mary-Kate Olsen
Freigeben: 2024-12-31 22:30:11
Original
301 Leute haben es durchsucht

How to Perform a Minus Operation in MySQL Using NOT IN?

Durchführen von Minus-Operationen in MySQL

In MySQL wird die Durchführung von Minus-Operationen nicht direkt unterstützt, wie in der Oracle-Datenbank. Es gibt jedoch alternative Möglichkeiten, mit NOT IN oder anderen Techniken ähnliche Ergebnisse zu erzielen.

Das Problem verstehen

Sie haben drei Tabellen:

  • Service_Details: Enthält Servicedetails.
  • Servicing_States: Listet Staaten auf, in denen sich ein Service befindet angeboten.
  • Ausnahme: Zeigt Postleitzahlen und Staaten an, in denen ein Dienst nicht angeboten wird.

Sie möchten diese Tabellen kombinieren und das Ergebnis wie folgt anzeigen:

SELECT query_1 - SELECT query_2
Nach dem Login kopieren

Lösung mit NOT IN

MySQL bietet den NOT IN-Operator, der zur Emulation von Minus verwendet werden kann Operationen. Die folgende Abfrage nutzt NOT IN, um das gewünschte Ergebnis zu erzielen:

SELECT
  service_details.Service_Code
FROM
  service_details
WHERE
  service_details.Service_Code IN (
    SELECT
      servicing_states.Service_Code
    FROM
      servicing_states
    WHERE
      servicing_states.State = 'California'
  )
  AND service_details.Service_Code NOT IN (
    SELECT
      exception.Service_Code
    FROM
      exception
    WHERE
      exception.State = 'California'
  );
Nach dem Login kopieren

Diese Abfrage wählt den Service_Code aus der Tabelle Service_Details aus, der in der Tabelle Servicing_States für Kalifornien, aber nicht in der Ausnahmetabelle für Kalifornien vorhanden ist. Dieser Ansatz ahmt den Effekt einer Minus-Operation nach.

Das obige ist der detaillierte Inhalt vonWie führe ich eine Minus-Operation in MySQL mit NOT IN durch?. 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
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage