Pagina 1 di 3 1 2 3 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 25
  1. #1

    Query per prelevare l'n-esima tupla

    Esiste una query del genere ?

    Cioè, mettiamo che ho una segreteria in cui l'utente 'tizio' vuole vedere il suo terzo messaggio.

    TABELLE:

    Utenti (id, nome, cognome)
    Messaggi (utente, chiamante, messaggio)


    QUERY:

    SELECT *
    FROM Utenti,messaggi
    WHERE id=utente AND nome='tizio'


    La query suscritta mostra tutti i messaggi, come modificare la query in modo da prendere solo il primo messaggio?

  2. #2
    una query inner join? oppure:
    codice:
    SELECT TOP 1 elenco_campi FROM tabella WHERE condizione
    ma che significa
    codice:
     l'n-esima tupla
    ???

  3. #3
    Originariamente inviato da Enrique_Rojas
    una query inner join? oppure:
    codice:
    SELECT TOP 1 elenco_campi FROM tabella WHERE condizione
    ma che significa
    codice:
     l'n-esima tupla
    ???
    Per esempio, mettiamo che i miei messaggi sono:

    codice:
    DATA      | NUMERO   | MESSAGGIO
    ---------------------------------------------
    4/5/2005  | 8348334  | 'ciao, asdasgdgrdgdr'
    5/5/2005  | 1441414  | 'hi, asfhireugiru'
    2/6/2005  | 1234567  | 'afsgdregrhmmmmmmmm'
    Se io vorrei vedere, ad es. solo il 2° messaggio, come posso fare?
    Ovviamente evitando di scorrere gli elementi fino al 2° (se avessi una tabella di milioni di righe ciò sarebbe improponibile).

    Insomma, esiste una query in grado di restituire una sola riga precisa, indicata da un numero intero?

  4. #4
    ... WHERE numero = qualcosa...

    ????

  5. #5
    Originariamente inviato da optime
    ... WHERE numero = qualcosa...

    ????


    Cos'è numero?!?

    Forse nn mi sono spiegato bene, come faccio con una query a prelevare SOLO la riga i-esima? (ad esempio, la 79-esima riga) di una tabella ?

    Altro esempio: ho una semplice tabella fatta solo di nomi (senza altri campi). Se voglio ordinarli per nome e prendere solo il 79-esimo nome, come faccio a farlo in una query?

  6. #6
    che db usi?

  7. #7
    Originariamente inviato da optime
    che db usi?
    Mi servirebbe sia x access sia x mysql

  8. #8
    ma se fai la select come all'inizio e poi fai la paginazione e ad ogni record fai un link oppure fai che per ogni pagina metti 10 messaggi ognuno con il proprio link.

  9. #9
    Originariamente inviato da xxfuma85xx
    ma se fai la select come all'inizio e poi fai la paginazione e ad ogni record fai un link oppure fai che per ogni pagina metti 10 messaggi ognuno con il proprio link.

  10. #10
    Utente di HTML.it L'avatar di longline
    Registrato dal
    Sep 2001
    Messaggi
    5,363
    In ASP, l'oggetto recordset supporta il metodo Move. Popola il tuo recordset, poi ti sposti al record che ti interessa (il milletrecentesimo):

    myRecordset.Move 1300

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.