Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: query con limit

  1. #1
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489

    query con limit

    ciao a tutti!

    so fare una query con limit. ma come faccio a farla invertita? cioé invece di far vedere solo i primi 10 risultati, vorrei vedere tutto TRANNE i primi 10 risultati.

    grazie

    ciao

    Igor

  2. #2
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    select * from tabella order by id limit 10,x

    dove al posto di x metti un numero abbastanza grande che ti dia la certezza di includere tutti i record.

  3. #3
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    grazie mille..

  4. #4
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    A dire il vero mi son sempre chiesto se sia preferibile la soluzione che ti ho proposto oppure quella che usa le query annidate per trovare i primi 10 valori e poi estrarre quelli con id maggiore del più grande di tali 10. Spero qualcuno mi tolga questo dubbio.

  5. #5
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    mysql_query("delete from reports where foruser='".$username."' order by id desc limit 100,50000")or die(mysql_error());

    non funziona mi sai indicare l errore perfavore?

    grazie

  6. #6
    che errore ti da sql?

    EDIT: non mi ricordo bene la sintassi di SQL, però mi pare che il

    order by id desc

    non ci possa essere nel delete (oltre il fatto che mi domando, cosa te ne fai?))
    Sviluppatore CI

    NettusLab Weblog

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ' 50000' at line 1

  8. #8
    Mumble,

    hai cosi tanti valori? 100,50000 ??

    o devi cancellarli da 100 all'infinito ? (finche non finisce i records nel db?)
    Sviluppatore CI

    NettusLab Weblog

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2007
    Messaggi
    489
    ho una tabella con 48000 valori. ogni utente quando fa il login deve autoamticametne cancellare tutti i suoi valori tranne i 100 piu recenti. quelli piu recenti sonoq uelli con l id piu alto.

  10. #10
    Utente di HTML.it L'avatar di nicola75ss
    Registrato dal
    Nov 2004
    Messaggi
    12,922
    Il problema è dovuto al fatto che nella delete non puoi specificare due parametri nel limit ma solo uno, quello relativo al numero di record che vuoi cancellare.

    edit. Ti serve quindi una query con la quale trovi l'id maggiore tra quelli che vuoi eliminare e poi esegui una query di delete eliminando i record con id inferiore.

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.