sql >> Database teknologi >  >> RDS >> Oracle

ORACLE/SQL:wm_concat &bestil efter

For alle, der stadig bruger wm_CONCAT (a.k.a. ældre db-versioner):Løsningen er at tilføje distinkt betingelse, den vil så også anvende stigende rækkefølge på de sammenkædede værdier.

Spørg ikke, hvorfor det ikke er dokumenteret, men det vil virke.

Ved at bruge en ordre af i en underforespørgsel, vil forud for wm_concat også bare randomisere rækkefølgen, så det burde ikke have været anbefalet.

Eksempel på den ønskede 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;

Bare vær advaret om, at den distinkte mulighed ikke virker, når den bruges i procedurer/pakker .



  1. (+) syntaks for outer joins i mysql

  2. InnoDB:duplikerede indekser fundet - er det meget dårligt?

  3. Sådan trækkes aktuel dato klokkeslæt fra dato klokkeslæt i databasen - PHP

  4. varchar2(n BYTE|CHAR) standard -> CHAR eller BYTE