sql - blank value istead in a mutiply subquery -


i have sql in sybase cumulative value of of quetity mulitiplied price gives blank values when want show real values.

here code :

    select pmu.idval, pmu.idint, pmu.idnumecrppal, pmu.idsensope, pmu.dtecr, pmu.qteecr, pmu.prixacquis,     (select sum(p1.qteecr)               casimir.dbo.pmu p1              p1.idnumecrppal < pmu.idnumecrppal , p1.idint = pmu.idint) qcp,      (select sum(p2.qteecr * p2.prixacquis)                casimir.dbo.pmu p2              p2.idnumecrppal < pmu.idnumecrppal , p2.idint = pmu.idint) prup       casimir.dbo.pmu pmu      idint = 1733  order idnumecrppal 

here result:

idval * idint * idnumecrppal *  qteecr *    prixacquis *    qcp prup 650     1733    1074292               69    0.00         {null} {null} 650     1733    1165538               6     0.00            69  0.00 650     1733    1618644               7     0.00            75  0.00 650     1733    1934483               10    0.00            82  0.00 650     1733    1934484               1     0.00            92  0.00 650     1733    2140552               93    0.00            93  0.00 650     1733    2506329               200   0.00            186 0.00 650     1733    2515839               100   0.00            386 0.00 650     1733    2520087               110   0.00            486 0.00 650     1733    2572565               400   0.00            596 0.00 650     1733    2581126               1     0.00            996 0.00 650     1733    2858466               56    0.00            997 0.00 650     1733    2907483               6     0.00            1053 0.00 650     1733    3227255               7     0.00            1059 0.00 650     1733    3440560               173   0.00            1066 0.00 650     1733    3440727               67    0.00            1239 0.00 650     1733    3467592               100   0.00            1306 0.00 650     1733    3482135               100   188.00          1406 0.00 650     1733    3483475               30    185.35          1506     650     1733    3491124               350   0.00            1536     650     1733    3717502               70    0.00            1886     650     1733    3717503               4     0.00            1956     650     1733    4046744               20    65.44           1960     650     1733    4047669               200   0.00            1980     650     1733    4059311               150   67.12           2180     650     1733    4101861               200   0.00            2330     650     1733    4118371               36    0.00            2530     650     1733    4118372               3     0.00            2566     

the column prup gives me right value give blank values after.

any idea

you need use isnull function

select pmu.idval, pmu.idint, pmu.idnumecrppal, pmu.idsensope, pmu.dtecr, pmu.qteecr, pmu.prixacquis, isnull((select sum(p1.qteecr)           casimir.dbo.pmu p1          p1.idnumecrppal < pmu.idnumecrppal , p1.idint = pmu.idint),0) qcp,  isnull((select sum(isnull(p2.qteecr,1) * isnull(p2.prixacquis,1))            casimir.dbo.pmu p2          p2.idnumecrppal < pmu.idnumecrppal , p2.idint = pmu.idint),0) prup  casimir.dbo.pmu pmu idint = 1733 order idnumecrppal 

you can use coalesce function instead.


Comments

Popular posts from this blog

php - Calling a template part from a post -

Firefox SVG shape not printing when it has stroke -

How to mention the localhost in android -