Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Usuwania wpisów gdy starsze niż
cadavre
post
Post #1





Grupa: Zarejestrowani
Postów: 472
Pomógł: 7
Dołączył: 7.12.2005
Skąd: Gliwice

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


Jak wykonać zapytanie o którym mowa w tytule, czyli usuwanie wpisów starszych niż np dwa miesiące (DATETIME)? Miałoby się to odbywać wiadomo podczas pierwszego otwarcia index.php na przykład.
Coś w stylu
  1. DELETE
  2. FROM `tabela`
  3. WHERE (aktualna DATA minus dwa miesiące > `data`)
lub
  1. DELETE
  2. FROM `tabela`
  3. WHERE (aktualna DATA minus `data` > dwa miesiące)

Myślę, że można przekształcić datetime na unixtime:
  1. unixtime(aktualna DATA) minus czas dwóch miesięcy > unixtime(`data`)


Proszę o pomoc. Jak to wykonać?

Ten post edytował cadavre 2.03.2006, 23:46:59


--------------------
Silesian PHP User Group - www.spug.pl
Symfony2, OAuth2, budowanie API - masz pytania? Pisz!
Go to the top of the page
+Quote Post
tmk
post
Post #2





Grupa: Zarejestrowani
Postów: 135
Pomógł: 0
Dołączył: 15.04.2004
Skąd: w-wa

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


jeśli w php to wystarczy sprawdzić warunek:
  1. <?php
  2. if(date('Y-m-d',strtotime("+2 month",strtotime($date_wpisu)))< date("Y-m-d")) 
  3. ?>


jeśli w sql, to :
  1. DELETE
  2. FROM `tabela`
  3. WHERE round(months_between(sysdate, data_wpisu))=2;

ale nie jestem pewien, czy to jest obsługiwane w MySQL czy tylko w Oracle
Go to the top of the page
+Quote Post
TomASS
post
Post #3





Grupa: Zarejestrowani
Postów: 1 660
Pomógł: 13
Dołączył: 9.06.2004
Skąd: Wrocław i okolice

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


Cytat(cadavre @ 2006-03-03 00:44:33)
  1. DELETE
  2. FROM `tabela`
  3. WHERE (aktualna DATA minus dwa miesiące > `data`)

  1. DELETE
  2. FROM `tabela`
  3. WHERE DATE_ADD(NOW(), INTERVAL -2 MONTH) > `data`;


klik


--------------------
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 Aktualny czas: 22.08.2025 - 09:21