Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    217

    [MySql] Cancellare le righe più vecchie oltre un certo limite di entry

    Salve, vorrei che la mia tabella $table si autolimitasse alle $x righe più recenti.
    Superate cioè le $x righe presenti in tabella, le entry più vecchie (ho una colonna $timestamp auto-compilata) vengono cancellare.

  2. #2
    stabilito il limite, cancella le prime n righe (con LIMIT() e ORDER BY data) done n è la count attuale meno il limite

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    217
    Quote Originariamente inviata da optime Visualizza il messaggio
    stabilito il limite, cancella le prime n righe (con LIMIT() e ORDER BY data) done n è la count attuale meno il limite
    Ho qualche problema con il LIMIT... dove sbaglio?
    mysql_query("DELETE * FROM $table ORDER BY item_timestamp LIMIT COUNT(*)-$max_table_items", $db)

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2010
    Messaggi
    217
    up

  5. #5
    Utente di HTML.it
    Registrato dal
    Oct 2013
    Messaggi
    23
    Ciao Tom, se non ho capito male il suggerimento di optime, dovresti fare una delete dove nella where metti tutti i valori, recuperati da una sub-query) che devono essere eliminati.

    Esempio:
    DELETE FROM table WHERE nome_campo IN (#select che estrae i dati che più vecchi#)

    F.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.