[ popmilan76 @ 24.06.2013. 11:29 ] @
Da li je moguce u samom query,tj sql komandi napraviti prebacivanje iz stringa u number,treba da odradim sum nekog polja,u kojem su sve brojevi ali je ono ipak u string types,zasto ne pitajte....

treba da napravim sum polja iznoskes koje je string

treba da mi bude ovako select sum(iznoskes) from izlasci
[ djoka_l @ 24.06.2013. 11:37 ] @
MySQL i SQL Server imaju funkcije CAST i CONVERT.
Oracle ima TO_NUMBER.
Konverzija iz string u number može biti čak i implicitna.
Da si rekao koja je baza, dobio bi precizniji odgovor.
[ popmilan76 @ 24.06.2013. 19:34 ] @
Pa to je tek problem,baza je paradox...
[ popmilan76 @ 24.06.2013. 19:54 ] @
Provalio hvala....
[ popmilan76 @ 29.06.2013. 15:57 ] @
Imam jos jednu stavku,ovako provalio sam sabiranje integera,ali je sada problem float(iz stringa),sve je okej kada nema zarez,ali kada ima zarez onda brljavi,recimo ako sabiram 15000.00 i 15000.30 ,izlazi mi 30000030,00,u qveriju koristim sum(cast(iznoskes as float)),sve je dobro kada je integer,kada nema zareza,,,inace stavio sam decimal seperator = ',',...Kada u BDE promenim da mi bude umesto .,bude ,,,,sve je okej
[ captPicard @ 29.06.2013. 17:26 ] @
Citat:
popmilan76: Imam jos jednu stavku,ovako provalio sam sabiranje integera,ali je sada problem float(iz stringa),sve je okej kada nema zarez,ali kada ima zarez onda brljavi,recimo ako sabiram 15000.00 i 15000.30 ,izlazi mi 30000030,00,u qveriju koristim sum(cast(iznoskes as float)),sve je dobro kada je integer,kada nema zareza,,,inace stavio sam decimal seperator = ',',...Kada u BDE promenim da mi bude umesto .,bude ,,,,sve je okej


Šta god da radiš, za početak promijeni tip polja u bazi u float, doublepreision, decimal ili štaveć... Ne možeš zbrajati stringove iz baze, to ti nikako nije ni pametno ni dobro...
[ popmilan76 @ 30.06.2013. 07:35 ] @
pa ne mogu promeniti sada to,,,,,treba mi bas string...posto sam vec dosta posla odradio sa tim string fields....
[ captPicard @ 30.06.2013. 09:34 ] @
Citat:
popmilan76: pa ne mogu promeniti sada to,,,,,treba mi bas string...posto sam vec dosta posla odradio sa tim string fields....


Kako ti treba string ako si rekao da moraš računati? Bez obzira koliko si posla odradio mislim da je najbolje rješenje da ispraviš takve greške jer bi mogao imati puno problema u budućnosti.

Šta se tvog pitanja tiče, mislim da bez UDF-a ne možeš zamijeniti '.' sa ',' u upitu, ili obratno. Možeš napraviti petlju sa upitom i onda spremati vrijednosti u varijable, zamijeniti '.' sa ',' ili šta ti već treba, izvršiti operaciju koja ti treba i onda vratiti pdoataka u bazu. Ali ponavljam, to je pogrešan pristup.
[ popmilan76 @ 30.06.2013. 11:05 ] @
Jel mi moze pomoci neko,da sabiram stringove a da izlazi float fields...ovaj upit sabira,ali mi ne daje decimalni deo,nego je on ukljucen u onaj prvi deo....Da li je to moguce.....

repzad.Query2.Close;
repzad.Query2.sql.Clear ;
repzad.Query2.SQL.Add ('select sum(cast(iznoskes as float)) as broj from izlasci');
repzad.Query2.SQL.Add ('where izlazak = ' + quotedstr(frmizborzad.edit2.text));
repzad.Query2.SQL.Add ('and Datum =' + quotedstr(frmizborzad.edit1.text) );
repzad.Query2.open;
[ popmilan76 @ 30.06.2013. 18:24 ] @
Provalio...hvala svima