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

Kastovao datum i zeznuo pretrazivanje

[es] :: MS SQL :: Kastovao datum i zeznuo pretrazivanje

[ Pregleda: 2001 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

KizaBG
programer

Član broj: 169491
Poruke: 247
*.adsl-1.sezampro.yu.



+1 Profil

icon Kastovao datum i zeznuo pretrazivanje04.03.2009. u 11:14 - pre 184 meseci
uh ....

u sql-i imam proceduru, koja za kriterijum datuma koristi

AND (@DatumOd IS null OR (
DATEPART(dd, u.[Datum]) >= DATEPART(dd, @DatumOd) AND
DATEPART(mm, u.[Datum]) >= DATEPART(mm, @DatumOd) AND
DATEPART(yyyy, u.[Datum]) >= DATEPART(yyyy, @DatumOd)))
AND (@DatumDo IS null OR (
(DATEPART(dd, u.[Datum]) <= DATEPART(dd, @DatumDo) AND
DATEPART(mm, u.[Datum]) <= DATEPART(mm, @DatumDo) AND
DATEPART(yyyy, u.[Datum]) <= DATEPART(yyyy, @DatumDo)))

i to je sve radilo OK.

onda sam pre par meseci uzeo da kastujem datum na formama (u pitanju je VS. Net 2005, Windows forms aplikacija) pa sam

1. u Program.cs fajlu dodao : Application.CurrentCulture = new System.Globalization.CultureInfo("en-us");

2. a na svim formama sam za datum stavio: Format: Custom , a custom format : mm-dd-yyyy ..

i sad mi ovo pretrazivanje u SQL-u ne vraca nista :((

pitanje: kako kastovati datume na formi, da uvek prikazuju datum u formatu mm-dd-yyyy, a a da mi ovo pretrazivanje ipak radi ?

10000 x thanks in advance

 
Odgovor na temu

KizaBG
programer

Član broj: 169491
Poruke: 247
*.adsl-1.sezampro.yu.



+1 Profil

icon Re: Kastovao datum i zeznuo pretrazivanje04.03.2009. u 14:08 - pre 184 meseci
resio tako sto sam stavio @DatumOd <= Datum <= @DatumDo

jedino sto mi ne radi ok je .. ako imam zapis koji je napravljen npr. 20.marta.2009 , i ako u kriterijum pretrage (dataTime picker) stavim 20.mart.2009, nece uzeti u obzir zapis sa tim datumom, vec moram da stavim 21.mart.2009.

ali ok ...
 
Odgovor na temu

mmix
Miljan Mitrović
Profesorkin muz
Passau, Deutschland

SuperModerator
Član broj: 17944
Poruke: 6042



+4631 Profil

icon Re: Kastovao datum i zeznuo pretrazivanje04.03.2009. u 14:16 - pre 184 meseci
A sto ne koristis BETWEEN?

WHERE Datum BETWEEN @DatumOd AND @DatumDo
Sloba je za 12 godina promenio antropološki kod srpskog naroda. On je od jednog naroda koji je bio veseo, pomalo površan, od jednog naroda koji je bio znatiželjan, koji je voleo da vidi, da putuje, da upozna,
od naroda koji je bio kosmopolitski napravio narod koji je namršten, mrzovoljan, sumnjicav, zaplašen, narod koji se stalno nešto žali, kome je stalno neko kriv… - Z.Đinđić
 
Odgovor na temu

KizaBG
programer

Član broj: 169491
Poruke: 247
*.adsl-1.sezampro.yu.



+1 Profil

icon Re: Kastovao datum i zeznuo pretrazivanje04.03.2009. u 14:31 - pre 184 meseci
Probao, ali opet ne daje dobar rezultat

WHERE ((@OsobaID IS null OR u.[OsobaID] = @OsobaID)

AND (@DatumOd IS null OR ( Datum BETWEEN @DatumOd AND @DatumDo ))
AND (@DatumDo IS null OR (Datum BETWEEN @DatumOd AND @DatumDo ))

pozdrav, hvala za pomoc
 
Odgovor na temu

Zidar
Canada

Član broj: 15387
Poruke: 3085
*.100.46-69.q9.net.



+79 Profil

icon Re: Kastovao datum i zeznuo pretrazivanje04.03.2009. u 16:57 - pre 184 meseci
datum je decimalni broj u stvari. Ako je tvoj Datum u bazi = '25 Feb 2008 14:50' onda ce ga pretraga tipa
SELECT .. WHERE datum <= '25 Feb 2008' promasiti. Zato sto je '25 Feb 2008 14:50' veci od '25 Feb 2008' . '25 Feb 2008' je u stvari '25 Feb 2008 00:00'

BETWEEN isto tako nece pomoci, cak je upotreba <= ,=> bolja nego BETWEEN u nekim slucajevima.

Verovatno negd eu procesu datum uzimas sa satima i minutima i zato ga WHERE promasi. Stavi u kriterijum ono +1 na DoDatuma i trebalo bi da proradi.
 
Odgovor na temu

[es] :: MS SQL :: Kastovao datum i zeznuo pretrazivanje

[ Pregleda: 2001 | Odgovora: 5 ] > FB > Twit

Postavi temu Odgovori

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