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

  • tm5
    tag

    Leteszteltem az elobb, es kis modositassal mukodik. 1-nel tobb szamjeggyel is, ami nekem fontos. Itt egy masik pelda, amiben nem sok elteres van, szoval elvileg erre at tudom irni.
    < <boolean>false</boolean>, 152312 >
    < <boolean>true</boolean>, 176 >
    < <s>false</s>, 271636 >
    < <s>true</s>, 1338 >

    Itt ugye csak annyi valtozik, hogy az int-bol boolean lesz, tehat:
    update subscription_attribute sa
    set sa.VALUE = '<boolean>'||SUBSTR(sa.VALUE,4,LENGTH(sa.VALUE)-7)||'</boolean>'
    ...
    where sa.VALUE LIKE '<s>%</s>'

    Viszont ha megforditjuk a helyzetet, es boolean-bol kell mast csinalni, akkor mar a szamokat is at kell irni a SUBSTR utan. Ezt a reszt nem tudtam ertelmezni, csak kapisgalom:
    SUBSTR(column_value,4,LENGTH(sa.VALUE)-7)
    A column_value helyett sa.VALUE-val mukodik, a 4-es gondolom az elso karakter amit megovunk, de azt ami utana van nem ertem.

    :R :R

    Érdekes, úgy rémlett, hogy később kijavítottam column_value-t SA.value-ra.

    SUBSTR(sa.VALUE,4,LENGTH(sa.VALUE)-7): ide a 4 helyére azt kell írni, ahol kezdődik a tényleges érték. '<s>' ugye 3 karakter hosszú, tehát a negyedik karakternél fog kezdődni a tényleges mezőérték. A LENGTH(sa.VALUE)-7 megadja, hogy hány karakter hosszú a tényleges mezőérték. Ezt úgy kapjuk meg, hogy a mező teljes hosszából (LENGTH(sa.VALUE)) levonjuk a fölösleges rész hosszát. Ez a mi példánkban 7 volt, mert '<s>' és '</s>' összesen 7 karakter.

    Tehát ha a boolean-ből szeretnéd kibányászni a tényleges mezőértéket, akkor az így néz ki:
    '<boolean>' hossza 9 (tehát a 10. karakteren fog kezdődni ami neked kell)
    '</boolean>' hossza 10
    SUBSTR(sa.VALUE,10,LENGTH(sa.VALUE)-19)

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