Query voor verwijderen

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Roy

Roy

23/05/2006 08:17:00
Quote Anchor link
Ik heb een linkoverzicht + archieven.

Op de index staan 5 blokken met links (1 blok = 1 dag). In de archieven staan 4 blokken, in het onderste blok staat deze query:

$query = "SELECT * FROM links WHERE DATEDIFF(NOW(), datepost) >= 5 AND category = 'mercedes' ORDER BY id ASC limit 0,75";

bij het blok daarboven, staat dan limit 75,75, daarboven 150,75 enz enz enz

Er staan dus 300 links per category in de archieven. Als ik dus in bijvoorbeeld de category mercedes 345 links heb, zijn er 45 he-le-maal nergens meer zichtbaar.

Kan ik via een query, degene die nergens meer zichtbaar zijn makkelijk het veld 'datepost' van legen? Ik weet namelijk niet hoe ik dat in mn query moet doen, dat hij die alleen mag legen wanneer hij ouder is dan 5 dagen EN degene die als laatste in de archieven staan (de laatste 300 dus)_ moet overslaan.
Gewijzigd op 01/01/1970 01:00:00 door Roy
 
PHP hulp

PHP hulp

16/11/2024 22:58:48
 
Roy

Roy

24/05/2006 10:11:00
Quote Anchor link
Iemand nog?
 
- SanThe -

- SanThe -

24/05/2006 10:15:00
Quote Anchor link
Is dat dan niet gewoon de rest?
limit 300, 99999999
 
Frank -

Frank -

24/05/2006 13:18:00
Quote Anchor link
Wanneer je gebruik kunt maken van sub-queries, kun je bovenstaande query gebruiken om de WHERE te bepalen.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
DELETE FROM
  links
WHERE
  id NOT IN(
    SELECT
      id
    FROM
      links
    WHERE
      DATEDIFF(NOW(), datepost) >= 5
    AND
      category = 'mercedes'
    ORDER BY
      id ASC
    LIMIT 300
  )

LET OP!!! Deze query is niet getest, maak dus eerst een copy van je tabel voordat je hiermee aan de slag gaat. Voor je het weet ben je de verkeerde data kwijt...
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.