Visualizzazione dei risultati da 1 a 9 su 9
  1. #1

    SQL ..ultimi record inseriti?

    Cari amici come faccio per ricavare gli ultimi record inseriti in una tabella?
    Ho provato con la seguente interogazione in sql ma non funziona dove sbaglio?
    SELECT TOP 15 COUNT(*) AS Date, Time, IP, PaeseID, BrowserID, OsID FROM Stats order by Date DESC"

  2. #2
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    quella select ti restituisce i primi 15 records che soddisfano i criteri di selezione....

    che intendi per "ultimi record"? :master:

  3. #3
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    come hai scritto credo che abbia bisogno almeno di un group by

  4. #4
    Originariamente inviato da darkblOOd
    quella select ti restituisce i primi 15 records che soddisfano i criteri di selezione....

    che intendi per "ultimi record"? :master:

    intendo ricavare gli ultimi inseriti nel data base!!!!

  5. #5
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    se hai un campo date
    SELECT TOP 15 * FROM Stats order by Date DESC

  6. #6
    Originariamente inviato da floyd
    se hai un campo date
    SELECT TOP 15 * FROM Stats order by Date DESC
    Non mi funziona mi restituisce tutta la tabella!
    Perche?

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    229

    RE

    Se non hai nessun elemento (tipo la data di inserimento) che possa farti capire quali siano gli ultimi record puoi fare così:
    Ti crei una colonna che ho chiamato progressivo di tipo number
    in questo modo

    alter table nome_tabella add
    (progressivo number)

    poi fai un update di progressivo inserendoci il rownum

    update nome_tabella set progressivo=rownum

    in questo modo ti sei creata un campo numerico che corrisponde proprio al numero progresivo dei record che hai via via inserito.

    infine puoi fare la tua select

    select * from nome_tabella
    where progressivo > (select max(progressivo)-15
    from nome_tabella).


    Cosi non dovresti avere problemi.


  8. #8
    Grazie molto mi sei stato molto utile!!!!

  9. #9
    Utente di HTML.it L'avatar di darkblOOd
    Registrato dal
    Jul 2001
    Messaggi
    2,212
    Originariamente inviato da floyd
    se hai un campo date
    SELECT TOP 15 * FROM Stats order by Date DESC
    oppure può prendersi il valore univoco creato nella tabella di sistema che indentifica la data e l'ora dell'inserimento del record :gren:

    (in SQLserver)

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.