Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [MYSQL] Pobranie danych z bazy, Pobranie przeliczonych daych miesięcznych
mefjiu
post 23.08.2008, 08:33:29
Post #1





Grupa: Zarejestrowani
Postów: 313
Pomógł: 5
Dołączył: 22.03.2005

Ostrzeżenie: (0%)
-----


Witam posiadam taka strukturę bazy:
  1. CREATE TABLE `startowa_history_swl_zarobek` (
  2. `id` int(4) NOT NULL,
  3. `mouth` varchar(2) collate utf8_polish_ci NOT NULL,
  4. `year` varchar(4) collate utf8_polish_ci NOT NULL,
  5. `datatime` int(10) NOT NULL,
  6. `koszt` varchar(10) collate utf8_polish_ci NOT NULL,
  7. PRIMARY KEY (`id`)
  8. ) ENGINE=MyISAM DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci;
  9.  
  10. --
  11. -- Zrzut danych tabeli `startowa_history_swl_zarobek`
  12. --
  13.  
  14. INSERT INTO `startowa_history_swl_zarobek` (`id`, `mouth`, `year`, `datatime`, `koszt`) VALUES
  15. (1, '08', '2008', 1217541600, '692.7'),
  16. (2, '09', '2008', 1220220000, '0'),
  17. (3, '10', '2008', 1222812000, '0'),
  18. (4, '11', '2008', 1225494000, '0'),
  19. (5, '12', '2008', 1228086000, '0'),
  20. (6, '01', '2009', 1230764400, '0'),
  21. (7, '02', '2009', 1233442800, '0'),
  22. (8, '03', '2009', 1235862000, '0'),
  23. (9, '04', '2009', 1238536800, '0'),
  24. (10, '05', '2009', 1241128800, '0'),
  25. (11, '06', '2009', 1243807200, '0'),
  26. (12, '07', '2009', 1246399200, '0'),
  27. (13, '08', '2009', 1249077600, '0'),
  28. (14, '09', '2009', 1251756000, '0'),
  29. (15, '10', '2009', 1254348000, '0'),
  30. (16, '11', '2009', 1257030000, '0'),
  31. (17, '12', '2009', 1259622000, '0'),
  32. (18, '01', '2010', 1262300400, '0'),
  33. (19, '02', '2010', 1264978800, '0'),
  34. (20, '03', '2010', 1267398000, '0'),
  35. (21, '04', '2010', 1270072800, '0');


Chwiałbym wyciągnąć dane z ostatnich 12 miesięcy mój kod wygląda tak poklei dla każdego miesiąca czyli zastosowanie w pętli ale zapytanie:
  1. SELECT *
  2. FROM `startowa_history_swl_zarobek` WHERE MONTH( FROM_UNIXTIME( datatime, '%Y-%m-%d' ) ) = MONTH( FROM_UNIXTIME( CURDATE( ) , '%Y-%m-%d' ) )
  3. LIMIT 0, 30


Zwraca mi dane z roku 2008 i 2009

  1. INSERT INTO `startowa_history_swl_zarobek` (`id`, `mouth`, `year`, `datatime`, `koszt`) VALUES
  2. (2, '09', '2008', 1220220000, '0'),
  3. (14, '09', '2009', 1251756000, '0');


Proszę o pomoc jak to wykonać aby pobierało poprawnie dane ?

Cały kod wygląda tak:
  1. <?php
  2. for ($month = 0; $month <= 11; $month++)
  3.  {
  4. $czas = time();
  5. $result_stats = $db->query("SELECT * FROM `startowa_history_swl_zarobek` WHERE MONTH( FROM_UNIXTIME( datatime, '%Y-%m-%d' ) ) = MONTH( FROM_UNIXTIME( CURDATE( ) , '%Y-%m-%d' ) )-$month");
  6.  }
  7. ?>


Ten post edytował mefjiu 23.08.2008, 08:36:08
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 13.06.2025 - 04:49