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

datediff problem

[es] :: MySQL :: datediff problem

[ Pregleda: 2300 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

novilist
Rijeka

Član broj: 41194
Poruke: 9
*.adsl.net.t-com.hr.



Profil

icon datediff problem20.06.2005. u 22:18 - pre 229 meseci
probao sam sa datediff funkcijom dobiti rezultat ali mi ne radi kako treba, pročitao sam da neke slabije verzije mySQL-a ne izvršavaju ovu naredbu pa me zanima da li postoji još neki način da dobijem isti rezultat.

kod koji sam koristio pisan je u asp i sa mySQL bazom verzije 4.0.21 (možda u kodu postoji greška?)

"'mySQL="SELECT predstava, datum1, datum2 FROM raspored WHERE DateDiff (""d"", PDate, datum1) >= '" & date() & "' and DateDiff (""d"", PDate, datum2) <= '" & date() & "' ORDER by datum1"

trebalo bi izlistati predstave samo koje su između tih datuma, ali to ne funckionira kako treba.
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: datediff problem21.06.2005. u 06:19 - pre 229 meseci
2 greske, a obe ces i sam uociti iz sledeceg copy & paste sa mysql.com sajta:

DATEDIFF(expr,expr2)

DATEDIFF() returns the number of days between the start date expr and the end date expr2. expr and expr2 are date or date-and-time expressions. Only the date parts of the values are used in the calculation.

mysql> SELECT DATEDIFF('1997-12-31 23:59:59','1997-12-30');
-> 1
mysql> SELECT DATEDIFF('1997-11-30 23:59:59','1997-12-31');
-> -31

DATEDIFF() was added in MySQL 4.1.1.

Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

SmilieBG
Aleksandar Skodric
NL

Član broj: 13094
Poruke: 1821
*.speed.planet.nl.



+3 Profil

icon Re: datediff problem21.06.2005. u 06:21 - pre 229 meseci
A to sto tebi treba, mozes ovako da uradis:

sql = SELECT predstava, datum1, datum2 FROM raspored where datum1 >= $current and datum2 <= $current order by datum1;

gde je $current = date('Y-m-d'); (naravno, format datuma, treba da bude kao sto ti je i u bazi). Ovo bi 'trebalo' da radi ovako, nisam testirao :)

Poz,
Sale
=========
Uporedi cene i karakteristike za vise od 10.000 proizvoda, izmedju ostalog:
Digitalni foto-aparati
Mobilni telefoni
Skolski pribor
=========
 
Odgovor na temu

novilist
Rijeka

Član broj: 41194
Poruke: 9
*.htnet.hr
Via: [es] mailing liste



Profil

icon Re: datediff problem21.06.2005. u 07:12 - pre 229 meseci
ovo ne radi sa mysql bazom, prijavljuje mi grešku kada upišem "$current".(bez navodnika)

--
No virus found in this outgoing message.
Checked by AVG Anti-Virus.
Version: 7.0.323 / Virus Database: 267.7.3/15 - Release Date: 14.6.2005
 
Odgovor na temu

Dejan Topalovic
Dejan Topalović
Senior Oracle DBA & Senior PL/SQL
Developer, Erste Sparinvest (Erste
Bank), Vienna, Austria
Vienna

Član broj: 635
Poruke: 1374
*.1.14.vie.surfer.at.

Sajt: www.baze-podataka.net


+2 Profil

icon Re: datediff problem22.06.2005. u 01:25 - pre 229 meseci
@novilisti: Zamisli ni meni ne radi tvoj izraz:
Code:
mysql> "'mySQL="SELECT predstava, datum1, datum2 FROM raspored WHERE DateDiff (""d"", PDate, datum1) >= '" & date() & "' and DateDiff (""d"", PDate, datum2) <= '" & date() & "' ORDER by datum1"";
ERROR 1064 (00000): You have an error in your SQL syntax 
near '"'mySQL="SELECT predstava, datum1, datum2 FROM raspored WHERE DateDiff (""d"", P' at line 1


Lijepo ti pise u dokumentaciji kako se koristi naredba DATEDIFF. Pogledaj koliko parametara imas ti u svom izrazu, a koliko ih treba biti...

Inace, ono $current je user defined varijabla u PHP-u, ciju vrijednost proslijedjujes SQL upitu.

Osim toga, mogao bi koristiti izraz:
Code:

SELECT predstava, datum1, datum2
FROM raspored
WHERE NOW() BETWEEN
DATEDIFF(PDate, datum2)
AND
DATEDIFF(PDate, datum1)
ORDER BY datum1;

pod uslovom da broj dana dobijenih sa DATEDIFF usporedjujes sa nekim brojem, a ne sa datumom ( NOW() ).
Blog - baze podataka
---------------------
Oracle OCP DBA (9i & 10g)
Oracle Database: SQL Certified Expert
Oracle OCP Developer
Certified MySQL DBA
 
Odgovor na temu

[es] :: MySQL :: datediff problem

[ Pregleda: 2300 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

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