J'ai une table Oracle et je veux extraire une valeur de la colonne, ma table Je veux créer une requête qui extrait le conteneur_id (valeur Dans mon cas, je veux la valeur aucune idée de la façon dont je peux créer la requête? Merci d'avance. P> p> 356 Code>) SHIHERE Le document_NUMBER est
'CC330589' CODE> et l'état est
99 code>. P>
356 code> (pas le
null code> valeur). P>
3 Réponses :
Vous pouvez essayer ci-dessous -
select * from tablename A inner join (select document_number, min(container_id ) from tablename group by document_number)B on A.document_number=B.document_number where A.document_number='CC330589' and state=99
Vous pouvez utiliser FID toutes les valeurs non-NULLL pour le document donné et utiliser Exist code> pour vous assurer que l'état 99 existe pour le document donné:
SELECT *
FROM t
WHERE document_number = 'CC330589'
AND container_id IS NOT NULL
AND EXISTS (
SELECT 1
FROM t AS x
WHERE document_number = t.document_number
AND state = 99
)
Cela obtiendra le jeu de résultats que vous spécifiez à partir des données d'échantillonnage. Que ce soit la solution correcte dépend de vos règles d'entreprise que vous n'avez pas spécifiées: voici une autre solution p> à nouveau, ce sera Produire le résultat spécifié des données d'échantillonnage mais peut être incorrect contre votre ensemble de données réel. p> p>
Il n'y a pas de rangée qui remplit vos besoins. La seule ligne avec l'état 99 a un conteneur null_id.
Oui, mais les deux lignes ont la même valeur de n ° numérique
Ajoutez quelques autres données de table, par exemple. un autre docide avec une rangée 40 une rangée et une valeur non nulle pour 99.
Voulez-vous obtenir conteneur_id avec le même document_number que l'enregistrement avec l'état = 99?
Oui je résous mon problème basé sur la réponse 1 merci à tous