Oracle
 sql >> Baza danych >  >> RDS >> Oracle

ORACLE/SQL:wm_concat i zamów według

Dla każdego, kto nadal używa wm_CONCAT (czyli starszych wersji bazy danych):Rozwiązaniem jest dodanie odrębnego warunku, który następnie zastosuje kolejność rosnącą do połączonych wartości.

Nie pytaj, dlaczego nie jest to udokumentowane, ale zadziała.

Ponadto użycie kolejności według w podzapytaniu poprzedzającym wm_concat spowoduje po prostu losową kolejność, więc nie powinno to być zalecane.

Przykład dla żądanego SQL:

SELECT TASK_CARD, WM_CONCAT(distinct code) as ZONES
FROM ODB.TASK_CARD_CONTROL
WHERE ODB.TASK_CARD_CONTROL.CONTROL_CATEGORY = 'ZONE'
GROUP BY TASK_CARD;

Ostrzegam tylko, że odrębna opcja nie działa, gdy jest używana w procedurach/pakietach.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Jak ustawić właściwą ścieżkę do pliku TNSNAMES w aplikacji C#?

  2. Wyrażenie regularne (RegEx) dla IPv6 Oddzielone od IPv4

  3. ClassCastException:org.jboss.jca.adapters.jdbc.jdk6.WrappedPreparedStatementJDK6 nie można rzutować na OraclePreparedStatement

  4. Zamiana System.Data.OracleClient na Oracle.DataAccess (ODP.NET)

  5. Jak wykonać zapytanie o nazwę bazy danych w Oracle SQL Developer?