Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL][MySQL][PHP] Ilość rekordów z dnia dzisiejszego
Forum PHP.pl > Forum > Przedszkole
reyne
Problem podobny jak kolega poniżej tylko że ja mam datę w formacie UNIX
Temat: MySQLRekordy z danego dnia

Mam tabelę `entries` (zawiera notatki)

  1. CREATE TABLE IF NOT EXISTS `entries` (
  2. `entry_id` int(10) NOT NULL AUTO_INCREMENT,
  3. `entry_name` varchar(150) NOT NULL,
  4. `entry_date` int(10) NOT NULL
  5. PRIMARY KEY (`entry_id`)
  6. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=1 ;


Chciałbym wyświetlić ilość dodanych notatek w dniu dzisiejszym.
Data w tabelce jest zapisywana w formacie UNIX.
Nie wiem tylko jak wyciągnąć z ciągu znaków UNIX dany dzien z bazy i porównać je z tym z aktualnej daty ze zmiennej time();

Próbuję:

  1. SELECT COUNT(*) FROM entries WHERE entry_date=''


Co dalej?
kefirek
  1. SELECT COUNT(*) FROM entries WHERE DATE(FROM_UNIXTIME(entry_date))=CURDATE();
reyne
dziękuję smile.gif jeszcze mam jedno pytanie: jak zmodyfikować te zapytanie żeby np wyświetlać ilość rekordów nie z dzisiejszego dnia a np z wczoraj, z obecnego miesiąca lub roku?
kefirek
Wczoraj
  1. SELECT COUNT(*) FROM entries WHERE DATE(FROM_UNIXTIME(entry_date))= DATE_SUB(CURDATE() ,INTERVAL 1 DAY);


W tym roku
  1. SELECT COUNT(*) FROM entries WHERE YEAR(FROM_UNIXTIME(entry_date))= YEAR(CURDATE());


W tym miesiącu
  1. SELECT COUNT(*) FROM entries WHERE MONTH(FROM_UNIXTIME(entry_date)) = MONTH(CURDATE()) AND YEAR(FROM_UNIXTIME(entry_date)) = YEAR(CURDATE());
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.