Requête SQL pour obtenir des lignes non conformes à la règle donnée

J'ai une liste de produits dans ma base de données.






























ID PRODUITUNITÉS
PROD1une
PROD22
PROD33
PROD4une
PROD5une

Solution du problème

Nous pouvons utiliser MAX et GROUP by. Parce que T est après F dans l'alphabet si l'une des valeurs est True, alors MAX pour ce productID est True. Nous utilisons ensuite HAVING pour obtenir les valeurs où MAX n'est pas True.
Il s'agit donc des produits qui n'ont pas d'unité de mesure marquée True, que la valeur soit False, vide ou nulle.

SELECT 
productid,
MAX(isbaseunit)
FROM
UNITOFMEASUREID
GROUP BY
productid
HAVING
MAX(isbaseunit) <> 'True';

Commentaires

Posts les plus consultés de ce blog

Erreur Symfony : "Une exception a été levée lors du rendu d'un modèle"

Détecter les appuis sur les touches fléchées en JavaScript

Une chaîne vide donne "Des erreurs ont été détectées dans les arguments de la ligne de commande, veuillez vous assurer que tous les arguments sont correctement définis"