Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: mysql - pole DATE / DATETIME
Forum PHP.pl > Forum > Przedszkole
Guest
Witam, mam kilka pytanek odnośnie pola DATE z mysql:

1) jak zadac zapytanie, aby z bazy wyciagnac wszystkie id, z polami DATE, ktore sa starsze niz 10 i mlodsze niz 20 dni?

2) jak obliczyc roznice w czasie z pol DATE i DATETIME ?
chodzi mi o:
1 pole = 2003-04-05, 2 pole = 2003-04-11 i aby wynik był = 6 dni
i analogicznie do pola DATETIME tyle, ze z wieksza dokladnoscia smile.gif

help sad.gif
rogrog
1)
  1. SELECT id FROM TABLE WHERE date BETWEEN (NOW() - INTERVAL 10 DAY) AND (NOW() + INTERVAL 10 DAY)



2)
  1. SELECT DATEDIFF(data1, data2) FROM TABLE

  1. SELECT TIMEDIFF(dataczas1, dataczas2) FROM TABLE

DATEDIFF i TIMEDIFF są dostępne dopiero od MySql 4.1.1.
Guest
Dzięki z tym 1-szym o to wlasnie chodzilo smile.gif

A odnośnie 2-giego nie ma jakiejs starszej metody do MySQL 4.0.20a-nt ? sad.gif

ps. znasz moze jeszcze metode na zwiekszenie o 1 wartosci pola w MySQL jednym zapytaniem, jezeli nie jest znana jego wartosc? i najlepiej zeby byla odrazu ona pobrana do zmiennej...
nautilus
a co do daty mam pytanie mam księge gości i jest zapisywanie daty dodania wpisu, ale serwer jest w USA i jest 6h do tyłu czas;/ jak zrobić zeby czas
  1. <?php
  2. now()
  3. ?>
był zapisany do bazy z godzina +6h?
rogrog
@nautilus: NOW() + INTERVAL 6 HOUR

@guest: kombinuj :] ja bym pobral obydwie daty i porównał je za pomocą php. poszukaj na tym forum, było jak porównać dwie daty. jeśli chodzi o zwiększenie wartości to przecież banał:

  1. UPDATE ... SET costam = costam + 1



Manual MySql: Date and Time Functions
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.