Ich habe zwei Tabellen. Ich möchte eine Ansicht erstellen. Ich habe eine Abfrage geschrieben, welche die zweite Tabelle des Wertes durch den korrekten Namen ersetzt.Es gibt viele Null-Wert bei Oracle Case
S_ID | STATION_NAME
------ | ------
1 | PACKAGER1
2 | PACKAGER2
3 | PACKAGER3
4 | PACKAGER4
5 | PACKAGER5
6 | PACKAGER6
7 | PACKAGER7
C_ID | STATION_ID | TO_STATION_ID
------ | -----------| -------------
1 | 1 | 7
2 | 2 | 7
3 | 3 | 7
4 | 4 | 7
5 | 5 | 7
6 | 6 | 7
7 | 7 | 1
7 | 7 | 2
7 | 7 | 3
7 | 7 | 4
7 | 7 | 5
7 | 7 | 6
SELECT CC.STATION_ID AS NUM,
CASE WHEN CC.STATION_ID = S.S_ID THEN S.STATION_NAME END
AS "FROM STATION"
FROM CONNECTION CC,
STATIONS S
Die Ersetzung funktioniert ordnungsgemäß, aber erstellt eine Menge anderer Zelle mit Nullwert. In allen 12 * 7 = 82. Wie kann ich diesen Fall überspringen, wenn der zwei Wert nicht gleich ist?
NUM | FROM_STATION
------ | ------
1 | PACKAGER1
2 | null
3 | null
4 | null
5 | null
6 | null
7 | null
Ich möchte dieses Ergebnis erhalten:
NUM | FROM_STATION | TO_STATION
------ | ------------ | ----------
1 | PACKAGER1 | Packager7
2 | PACKAGER2 | Packager7
3 | PACKAGER3 | Packager7
4 | PACKAGER4 | Packager7
5 | PACKAGER5 | Packager7
6 | PACKAGER6 | Packager7
7 | PACKAGER7 | Packager1
8 | PACKAGER7 | Packager2
9 | PACKAGER7 | Packager3
10 | PACKAGER7 | Packager4
11 | PACKAGER7 | Packager5
12 | PACKAGER7 | Packager6
hoffe, dass Sie brauchen, was Gordon Linoff antwortete. Bitte beziehen Sie sich auf diesen Link, https://www.techonthenet.com/oracle/joins.php Hoffe, das wird Ihnen einige Ideen geben. – vipin