2016-06-15 4 views
-1

Lassen Sie uns sagen, dass wir eine Datenbank mit einer Tabelle haben die folgenden Felder definiert:Nutzungswerte von zwei Feldern eines ersten SELECT in eine zweite

id -- localCode -- localNumber -- status 

der Hoffnung, Ihnen zu helfen: Es wird mit den verschiedenen Datensätzen sein gleiche Kombination (localCode + localNumber) aber unterschiedlicher Status.

würde Ich mag die Ergebnisse dieser Abfrage verwenden

SELECT localCode, localNumber FROM Table WHERE status = 'val_1' 

die Datensätze mit der Kombination (localCode + localNumber) vor, aber Status gefunden zu finden = ‚val_2‘.

Danke alle

+0

Zusätzlich zur Beschreibung Ihres Problems zeigen Sie Beispieldaten und Ihre erwarteten Ergebnisse sowie den von Ihnen versuchten Code an. – AgRizzo

+0

Sie haben teilweise Recht. Ich stimme Ihnen zu, dass Sie Beispieldaten und erwartete Ergebnisse hinzufügen (ich habe das in anderen Fragen getan), aber in diesem Fall schien es mir, dass ich das Problem in einer klaren schematischen Weise darlegte (und tatsächlich ist die Antwort perfekt für mein Problem). . – Marco

Antwort

0

ein auf dem Tisch Make selbstschließen.

SELECT 
    t2.id 
FROM Table t1 
INNER JOIN Table t2 
    ON t1.localCode = t2.localCode 
    AND t1.localNumber = t2.localNumber 
WHERE t1.status = 'val_1' 
    AND t2.status = 'val_2' 

Diese Abfrage wird alle IDs von Datensätzen finden, die den Status mit dem Status val_2 und wo ein entsprechender Eintrag existiert haben val_1.

Verwandte Themen