Maison > base de données > tutoriel mysql > Comment effectuer une opération moins dans MySQL en utilisant NOT IN ?

Comment effectuer une opération moins dans MySQL en utilisant NOT IN ?

Mary-Kate Olsen
Libérer: 2024-12-31 22:30:11
original
251 Les gens l'ont consulté

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

Effectuer des opérations moins dans MySQL

Dans MySQL, l'exécution d'opérations moins n'est pas directement prise en charge comme dans la base de données Oracle. Cependant, il existe d'autres moyens d'obtenir des résultats similaires en utilisant NOT IN ou d'autres techniques.

Comprendre le problème

Vous disposez de trois tableaux :

  • Service_Details : contient les détails du service.
  • Servicing_States : répertorie les états dans lesquels un service se trouve offert.
  • Exception : indique les codes postaux et les états où un service n'est pas offert.

Vous souhaitez combiner ces tableaux et afficher le résultat comme :

SELECT query_1 - SELECT query_2
Copier après la connexion

Solution utilisant NOT IN

MySQL fournit l'opérateur NOT IN, qui peut être utilisé pour émuler moins opérations. La requête ci-dessous exploite NOT IN pour obtenir le résultat souhaité :

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'
  );
Copier après la connexion

Cette requête sélectionne le Service_Code dans la table Service_Details qui existe dans la table Servicing_States pour la Californie mais n'est pas présent dans la table Exception pour la Californie. Cette approche imite l'effet d'une 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