W jaki sposób można uzyskać następujące elementy w Oracle bez tworzenia procedury składowanej?W jaki sposób wiele wierszy może być połączonych w jeden w Oracle bez tworzenia procedury składowanej?
Data Set:
question_id element_id
1 7
1 8
2 9
3 10
3 11
3 12
pożądany rezultat:
question_id element_id
1 7,8
2 9
3 10,11,12
Działa świetnie! ROW_NUMBER() to, czego mi brakowało do wykonania sys_connect_by_path dla mnie. –
Należy zauważyć, że gdy ta technika zostanie zastosowana do połączenia pola, którego wartość może zawierać separator, zostanie zgłoszony następujący błąd: 'ORA-30004: podczas korzystania z funkcji SYS_CONNECT_BY_PATH, nie może mieć separatora jako części wartości kolumny. ... i jeśli łączona wartość przekracza maksymalną długość 4000 bajtów, więc otrzymasz błąd: 'ORA-01489: wynik łączenia ciągów jest zbyt długi. – Somu