Hirdetés

Új hozzászólás Aktív témák

  • Apollo17hu

    őstag

    válasz Louro #3059 üzenetére

    Szerintem ketté kellene szedni az "azon" mezőt. Ha egyben marad, le kell vágni az első karaktert, és a mentén csoportosítani. Nem tudom ellenőrizni, hogy szintaktikailag helyes-e, de valahogy így nézne ki a sorszámozás:

    SELECT rendeles.azon
    ,substr(rendeles.azon, 1, 1) ||
    rank() over(PARTITION BY substr(rendeles.azon, 1, 1) ORDER BY rendeles.azon) +
    CASE WHEN substr(rendeles.azon, 1, 1) = 'K'
    THEN max_sorszam.max_k
    WHEN substr(rendeles.azon, 1, 1) = 'L'
    THEN max_sorszam.max_l
    WHEN substr(rendeles.azon, 1, 1) = 'M'
    THEN max_sorszam.max_m
    END uj_azon
    FROM rendeles
    ,(SELECT MAX(CASE WHEN substr(sorszam.azon,1, 1) = 'K'
    THEN to_number(substr(sorszam.azon, 2)) END) AS max_k
    ,MAX(CASE WHEN substr(sorszam.azon,1, 1) = 'L'
    THEN to_number(substr(sorszam.azon, 2)) END) AS max_l
    ,MAX(CASE WHEN substr(sorszam.azon,1, 1) = 'M'
    THEN to_number(substr(sorszam.azon, 2)) END) AS max_m
    FROM sorszam) max_sorszam

Új hozzászólás Aktív témák