Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it L'avatar di abellos
    Registrato dal
    Feb 2002
    Messaggi
    431

    [MariaDB] Conteggio record query

    Ciao,
    ho questa query
    codice:
    SELECT archivi.codArch, archivi.descrizione, archivi.perc, archivi.mariaDB, archivi.codTipoArch, tipoArchivi.descrizioneTipo, archivi.bloccato, archivi.controlloRichieste, archivi.ordine, archivi.visibile, archivi.codStatoArch, statoArchivi.DescrStato, archivi.dataRitiro, archivi.dataMacero
    FROM ((archivi
    INNER JOIN tipoArchivi ON archivi.codTipoArch = tipoArchivi.codTipoArch)
    INNER JOIN statoArchivi ON archivi.codStatoArch = statoArchivi.codStatoArch)
    INNER JOIN db ON archivi.codArch = db.codArch
    GROUP BY archivi.codArch, archivi.descrizione, archivi.perc, archivi.mariaDB, archivi.codTipoArch, tipoArchivi.descrizioneTipo, archivi.bloccato, archivi.controlloRichieste, archivi.ordine, archivi.visibile, archivi.codStatoArch, statoArchivi.DescrStato, archivi.dataRitiro, archivi.dataMacero, db.codUtente
    HAVING (((db.codUtente)=999006))
    ORDER BY archivi.codArch;
    su mariaDB e' possibile aggiungere una colonna con il conteggio del numero di righe della query stessa?
    Da un grande potere derivano grandi responsabilità

  2. #2
    fa' un esempio pls, la rihiesta non è chiara

  3. #3
    Utente di HTML.it L'avatar di abellos
    Registrato dal
    Feb 2002
    Messaggi
    431
    Volevo sapere se c'e' un modo per sapere quanti record ritorna la query aggiungendo una colonna nella query stessa con il numero dei record conteggiati.
    Mi serviva perche' non mi funzionava la proprietà recordcount del recordset, ma ho scoperto che devo aggiungere ConnLog.CursorLocation = adUseClient (valore 3) prima di aprire il recordset
    Comunque sarei curioso di sapere se si può fare nella query una cosa del genere
    Da un grande potere derivano grandi responsabilità

  4. #4
    puoi mettere COUNT() assieme a GROUPBY() ma poi te lo ripete per tutte le righe

  5. #5
    Utente di HTML.it L'avatar di abellos
    Registrato dal
    Feb 2002
    Messaggi
    431
    ho fatto cosi
    codice:
    SELECT archivi.codArch, archivi.descrizione, archivi.perc, archivi.mariaDB, archivi.codTipoArch, tipoArchivi.descrizioneTipo, archivi.bloccato, archivi.controlloRichieste, archivi.ordine, archivi.visibile, archivi.codStatoArch, statoArchivi.DescrStato, archivi.dataRitiro, archivi.dataMacero, COUNT(*) AS tt
    FROM ((archivi
    INNER JOIN tipoArchivi ON archivi.codTipoArch = tipoArchivi.codTipoArch)
    INNER JOIN statoArchivi ON archivi.codStatoArch = statoArchivi.codStatoArch)
    INNER JOIN db ON archivi.codArch = db.codArch
    GROUP BY archivi.codArch, archivi.descrizione, archivi.perc, archivi.mariaDB, archivi.codTipoArch, tipoArchivi.descrizioneTipo, archivi.bloccato, archivi.controlloRichieste, archivi.ordine, archivi.visibile, archivi.codStatoArch, statoArchivi.DescrStato, archivi.dataRitiro, archivi.dataMacero, db.codUtente
    HAVING (((db.codUtente)=999006))
    ORDER BY archivi.codArch;
    ma mi conteggia sempre solo 1 anche se ho 126 righe nella query, si va bene che mi dia lo stesso valore per tutte le righe
    Da un grande potere derivano grandi responsabilità

  6. #6
    corretto, ti conta quanti record sono considerati nel raggruppamento; e visto che hai messo tutte le colonne nella GROUPBY(), in ogni raggruppamento c'è solo un record. Per questo ti ho chiesto di fare un esempio.

    Ho visto che esiste questa funzione https://dev.mysql.com/doc/refman/8.0...ion_found-rows ma non la conosco

    un altro trucco potrebbe essere andare in fondo al recordset (MoveLast) e poi tornare all'inizio (MoveFirst) e a quel punto la recordCount dovrebbe essere esatta

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.