Acquista i nostri libri consigliati su Amazon.it
+ Rispondi al messaggio
Visualizzazione dei risultati da 1 a 5 su 5

[Access] Esiste una funzione LIMIT?

  1. #1
    Zigo non è in linea Scolaretto
    Sto utilizzando un database mdb, e vorrei eseguire una query che mi mostra i record dal numero X a quello Y

    in mysql mi basta scrivere LIMIT 5,10 e so che mi mostra 10 record a partire da 5..

    su access cosa posso fare?

    l'unica cosa che ho trovato in rete è la funzione TOP, che però non riesco ad adattarla al mio caso.

    qualcuno sa come fare?
    ℹ️ Leggi di più su Zigo ...

  2. #2
    L'avatar di @Alex
    @Alex non è in linea Moderatore Globale
    Quote Originariamente inviato da Zigo Visualizza il messaggio
    Sto utilizzando un database mdb, e vorrei eseguire una query che mi mostra i record dal numero X a quello Y

    in mysql mi basta scrivere LIMIT 5,10 e so che mi mostra 10 record a partire da 5..

    su access cosa posso fare?

    l'unica cosa che ho trovato in rete è la funzione TOP, che però non riesco ad adattarla al mio caso.

    qualcuno sa come fare?
    Con JET(Access per gli amici) questa cosa non è fattibile.
    TOP preleva solo i primi X records, o gli utlimi se effettui l'ordinamento DESC(decrescente), ma non è come dici tu...!

    L'unico metodo è quello di avere un campo INCREMENTALE senza BUCHI e sfruttare una WHERE sul campo....., oppure complicarsi la vita con più query di esclusione ed unione... ma con JET l'efficienza è pessima.
    ℹ️ Leggi di più su @Alex ...

  3. #3
    Zigo non è in linea Scolaretto
    si, non dicevo che TOp era la soluzione, ma che stavo provando ad adattarla... con pessimi risultati

    purtroppo non ho campi incrementali, o meglio ci sono ma non posso considerarli perchè gli utenti hanno la possibilità di cancellare le cose e rimarrei con troppo buchi..

    quindi, se ho capito bene devo prendermi tutti i record e poi filtrarmeli via codice?
    ℹ️ Leggi di più su Zigo ...

  4. #4
    L'avatar di @Alex
    @Alex non è in linea Moderatore Globale
    Quote Originariamente inviato da Zigo Visualizza il messaggio
    si, non dicevo che TOp era la soluzione, ma che stavo provando ad adattarla... con pessimi risultati

    purtroppo non ho campi incrementali, o meglio ci sono ma non posso considerarli perchè gli utenti hanno la possibilità di cancellare le cose e rimarrei con troppo buchi..

    quindi, se ho capito bene devo prendermi tutti i record e poi filtrarmeli via codice?

    Come ti docevo puoi provare a fare una Query con SubQuery ad esclusione...!
    Dal record 5 al record 10 
    
    SELECT TOP 5 T1.* 
    FROM  CLIENTI AS  TD1  LEFT JOIN 
                 (SELECT TOP 5 Campo1 
                  FROM NomeTabella 
                  Order By Campo2)  AS TD2 
                  ON TD1.Campo1=TD2.Campo1 
    WHERE     
            TD2.Campo1 IS NULL 
    ORDER BY Campo2
    
    Dal record 10 al 15 incrementi la SubSelect...
    In pratica il 5 Blu è il Record di partenza ed il 5 rosso il n° record da prelevare...

    Prova e facci sapere.
    ℹ️ Leggi di più su @Alex ...

  5. #5
    L'avatar di chico_
    chico_ non è in linea Topo di biblioteca Ultimo blog: Attacco a Oscommerce
    Non chiedetemi di ripetere il ragionamento , ma , salvo verifiche sul campo, dai test fatti sinora questa query funziona:
    SELECT TOP XXX * FROM tabella WHERE 
    ID>=(SELECT TOP 1 ID FROM 
    (SELECT TOP YYY ID  FROM tabella ORDER BY ID ASC)  ORDER BY ID DESC)
    
    XXX sta per il numero di elementi che si vogliono visualizzare
    YYY sta per la posizione di partenza

    Ciauz

    Chico
    ℹ️ Leggi di più su chico_ ...

+ Rispondi al messaggio

Potrebbero interessarti anche ...

  1. Risposte: 4
    Ultimo Post: 03-04-2017, 11:22
  2. Risposte: 1
    Ultimo Post: 31-03-2017, 14:44
  3. [Access] Simulare clausola LIMIT
    Da patatasoftware nel forum Microsoft Access
    Risposte: 6
    Ultimo Post: 30-09-2010, 17:46
  4. [SQL] Comando limit su Access
    Da Zigo nel forum Visual Basic .Net
    Risposte: 2
    Ultimo Post: 05-11-2005, 20:47
  5. Limit record in access
    Da Trinity nel forum Visual Basic 6
    Risposte: 3
    Ultimo Post: 29-06-2004, 11:39