Maison > base de données > tutoriel mysql > Comment simuler l'opération MOINS dans MySQL ?

Comment simuler l'opération MOINS dans MySQL ?

Barbara Streisand
Libérer: 2024-12-30 18:55:13
original
972 Les gens l'ont consulté

How to Simulate the MINUS Operation in MySQL?

Équivalent MySQL de l'opération MINUS

MySQL ne prend pas en charge nativement l'opération MINUS, qui est couramment utilisée dans les bases de données Oracle. Cependant, il propose une approche alternative pour exclure des enregistrements à l'aide de la condition NOT IN.

Énoncé du problème

Vous disposez de trois tables :

  • Service_Details : stocke les détails du service
  • Servicing_States : répertorie les états dans lesquels les services sont offert
  • Exception : indique les zones où les services ne sont pas offerts

Vous souhaitez combiner les résultats de deux requêtes SELECT pour obtenir une liste de services offerts dans certains États mais pas dans d'autres, effectuant efficacement une opération MOINS.

Solution

Pour y parvenir, vous pouvez utiliser ce qui suit requête :

SELECT Service_Code
FROM Service_Details
WHERE Service_Code IN (
  SELECT Service_Code
  FROM Servicing_States
  WHERE State NOT IN (
    SELECT State
    FROM Exception
    WHERE Zipcode = <ZIP CODE>
  )
);
Copier après la connexion

Explication

Cette requête effectue les étapes suivantes :

  1. Sélectionne le Service_Code dans Service_Details.
  2. Filtre les résultats pour inclure uniquement les valeurs Service_Code qui existent dans Servicing_States table.
  3. Supprime toutes les valeurs Service_Code présentes dans la table Exception avec le code postal spécifié.

La liste résultante représente les services offerts dans certains États mais pas dans le Code postal spécifié, simulant efficacement l'opération MOINS.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal