Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

IF uslov u sql kodu

[es] :: MySQL :: IF uslov u sql kodu

[ Pregleda: 2805 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

bloker
R. Srpska

Član broj: 79958
Poruke: 216
79.143.174.*



+3 Profil

icon IF uslov u sql kodu03.12.2008. u 08:36 - pre 187 meseci
U bazi je postavljeno ako nije unesen datum da on sam ubaci default-ni datum "0001-01-01" e sada kada to kupim u program i saljem na izvjestaj ruzno izgleda kada stoji taj datum.. pa me sada interesuje da li ja nekako mogu da napisem IF uslov u sql kodu..
tj. gdje je god defaultna vrijednost u sql da mi napishe null, a da mi ne remeti podatke u bazi..

npr IF(datum=="0001-01-01") datum="null";
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.xdsl.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: IF uslov u sql kodu03.12.2008. u 08:50 - pre 187 meseci
prvo, za datum je iskusno da stavis da je default vrednost NOW() tako da ti ako ne uneses datum on upise trenutno vreme... no vezano za tvoje pitanje odgovor je DA.

http://dev.mysql.com/doc/refma...en/control-flow-functions.html

Citat:


IF(expr1,expr2,expr3)
If expr1 is TRUE (expr1 <> 0 and expr1 <> NULL) then IF() returns expr2; otherwise it returns expr3. IF() returns a numeric or string value, depending on the context in which it is used.


Code:

mysql> SELECT IF(1>2,2,3);
        -> 3
mysql> SELECT IF(1<2,'yes','no');
        -> 'yes'
mysql> SELECT IF(STRCMP('test','test1'),'no','yes');
        -> 'no'



 
Odgovor na temu

bloker
R. Srpska

Član broj: 79958
Poruke: 216
79.143.175.*



+3 Profil

icon Re: IF uslov u sql kodu03.12.2008. u 11:22 - pre 187 meseci
Nisam mogao da postavim da upise trenutno vrijeme.. posto je taj datum neki podatak koji ce se kasnije unositi i treba da bude prazan

nego hvala na ovome pomoglo mi je rijesio sam problem
 
Odgovor na temu

bogdan.kecman
Bogdan Kecman
"specialist"
Oracle
srbistan

Član broj: 201406
Poruke: 15887
*.xdsl.beograd.com.

Sajt: mysql.rs


+2377 Profil

icon Re: IF uslov u sql kodu03.12.2008. u 11:30 - pre 187 meseci
hm, onda si trebao da ostavis null u bazi i da upisujes tu null :) .. upisivanje 0001-01-01 nije bas neki "regularan" nacin za tako nesto :D no .. o ukusima ...

if resava problem .. to je bitno .. mozes sa if cak da radis stvari poput

Code:

create table t1(
  x int,
  y int.
  z int
);

select if (x>10,y,z) from t1;


to ce za svaki x>10 da ti vrati vrednost iz Y a za x<=10 vrednost iz Z :) .. pritom, obrati paznju, takav upit je uvek "table scan" sto znaci da je spoooooooor

cak i u nekim drugim situacijama if ce prouzrokovati table scan tako da ga treba koristiti sa paznjom
 
Odgovor na temu

[es] :: MySQL :: IF uslov u sql kodu

[ Pregleda: 2805 | Odgovora: 3 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.