Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828

    [PHP] count particolare

    salve,
    ho una tabella con quasi un milione di records.

    in questa tabella c'è un campo id_passivo e un campo id.

    avrò quindi qualcosa di questo tipo
    id, id_passivo
    10000,123
    10001,938
    10002,345
    10003,123
    10004,567
    etc etc..

    in pratica vorrei fare un query che mi controlli che non vi sia più di 15 volte l'id_passivo e per fare questo basta una semplice count,
    ma la cosa piu complicata è che vorrei cancellare il 16°,17°,18° record e così via piu vecchi in modo che sulla tabella mi rimangano solamente 15 records (al massimo) per ogni id.

    come potrei fare?

  2. #2
    Codice PHP:
    while ($row mysql_fetch_array(mysql_query("SELECT id, id_passivo FROM tabella",$db))) {
    if (
    $row['id'] == $lastid)
    $uguali++;
    else
    $lastid $row['id'];
    if (
    $uguali>15mysql_query("DELETE FROM tabella WHERE id = $row[id] AND id_passivo = $row[id_passivo]",$db);

    (non l'ho provata...)

  3. #3
    Utente di HTML.it L'avatar di Gabbro
    Registrato dal
    Nov 2000
    Messaggi
    828

    grazie

    buona l'idea non ci avevo pensato, grazie.
    l'unico problema è che ho paura che sia parecchio pesante in termini di richiesta di risorse sul server.

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.