Ich habe zwei Anfragen, die mir eine identische Menge an c_id
s zurückgeben (Betrag ist variabel)Daten Combine von variable Menge von Datensätzen in einer
SELECT c_id FROM test WHERE test_id=123 AND op=1
SELECT c_id FROM test WHERE test_id=123 AND op=2
Beispiel:
erste Abfrage Returns 1, 3, 5, 7
Zweite Abfrage gibt 2, 4, 6, 8
zurückDie entsprechenden IDs sind:
1 2
3 4
5 6
7 8
Mit diesen c_id
s ich diese Abfrage verwenden möchten:
offset where c_id=1 Data where c_id=1 Data where c_id=2
.
.
.
offset where c_id=3 Data where c_id=3 Data where c_id=4
.
.
offset where c_id=5 Data where c_id=5 Data where c_id=6
.
.
.
.
offset where c_id=7 Data where c_id=7 Data where c_id=8
.
.
.
.
.
:
SELECT a.offset, a.values, b.value
FROM data AS a INNER JOIN data AS b ON a.offset=b.offset
AND a.c_id=RESULTS FROM FIRST QUERY ABOVE
AND b.c_id=RESULTS FROM SECOND QUERY ABOVE
wie Meine erwartete Ergebnis aussehen sollte Die Menge an Daten, die die entsprechende c_id
s zurückgibt, sind e Qual
Wie kann ich das erreichen? Es ist wie ein UNION ALL
mit allen c_id
s, aber ich habe keine Ahnung, wie das zu tun ...
Haben Sie den gleichen Wert erfordern, wie in Ihrem erwartetes Ergebnis – StackUser
@StackUser. Ich bin mir nicht sicher, ob ich dich richtig verstanden habe. Die 'c_id's sind in chronologischer Reihenfolge (wie im Beispiel gezeigt), aber sie sind nicht konstant. – Blobonat