Eliminieren Sie Datensätze durch Gruppierung und Aggregation
<p>Ich habe eine temporäre Tabelle mit folgendem Inhalt: </p>
<pre class="brush:php;toolbar:false;">playlist_id |
----------------------------------------
123 |. 111 |
123 |. 111 |. falsch
123 |. 111 |
123 |. 112 |
456 |. 212 |. falsch
789 |. 212 |. true</pre>
<p>Ich muss die Ergebnisse reduzieren, wenn für eine <code>playlist_id, item_id</code> alle <code>übergebenen</code>-Werte wahr sind. Also in diesem Beispiel ist das gewünschte Ergebnis: </p>
<pre class="brush:php;toolbar:false;">playlist_id |
----------------------------------------
123 |. 112 |
789 |. 212 |. true</pre>
<p>Da das <code>playlist_id</code>-Paar des zweiten Datensatzes einen <code>false</code>-Wert hat, muss die gesamte entsprechende Gruppe gelöscht werden.
Ich habe versucht, <code>group by</code> und <code>having</code> zu verwenden, also lautet die Abfrage: </p>
<pre class="brush:php;toolbar:false;">select
Wiedergabeliste,
Artikel Identifikationsnummer
aus
temporäre Tabelle
gruppiere nach
playlist_id,
Artikel Identifikationsnummer
nach bestanden = true</pre>
<p>Aber das gibt mir alle Paare zurück, die mindestens einen <code>true</code>-Wert haben. </p>
<p>Wie entferne ich alle <code>playlist_id, item_id</code>-Datensätze, wenn eines der booleschen <code>übergebenen</code>-Felder falsch ist? </p>
<p>Vielen Dank! </p>