Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it L'avatar di Cozza
    Registrato dal
    Jan 2001
    Messaggi
    467

    SQLSERVER Lentezza su query con molti dati

    è qui che si fanno le domande sui database

    buongiorno a tutti ho una query su una tabella (SQL-SERVER) con alcune decine di milioni di record, su cui faccio una group by per 2 campi,
    ora il mio problema è che ci mette tantissimo a eseguirla anche quando mi ritorna 0 record (7-8 min) , quando prendo
    un intervallo abbastanza grosso anche molto di + ancora non so quantificare bene devo fare delle altre prove... ma credo decine di minuti
    io il massimo del miglioramento l'ho ottenuto mettendo nella select i campi minimi indispensabili e creando un indice
    con i campi che vanno nella group by... :master:
    voi avete qualche altro suggerimento?
    non si può proprio fare di meglio?
    Ho mille libri sotto il letto non leggo più
    ho mille sogni in un cassetto non lo apro più
    parlo da solo e mi confondo e penso
    che in fondo sì sto bene così

  2. #2
    Utente di HTML.it L'avatar di Fox82
    Registrato dal
    Feb 2002
    Messaggi
    459
    Prova a postare lo schema della tabella e la query, magari vediamo cosa si può fare
    Linux user number 403381

    Stop TCPA!

  3. #3
    Utente di HTML.it L'avatar di Cozza
    Registrato dal
    Jan 2001
    Messaggi
    467
    select ARTICOLO,CLIENTE,QTA=sum(QTA)
    PREZZO=sum(QTA*PREZZO),
    PREZZOA=sum(QTA*PREZZOA)
    from VENDITE
    where DTVEN >= @DTINIZIO
    and DTVEN <= @DTFINE
    and ARTICOLO=@CODART
    and CLIENTE in(SELECT CODICE FROM TMP_CLIENTI)
    group by ARTICOLO,CLIENTE

    grassie, ho semplificato un po' ma tanto la parte che rallenta è questa
    Ho mille libri sotto il letto non leggo più
    ho mille sogni in un cassetto non lo apro più
    parlo da solo e mi confondo e penso
    che in fondo sì sto bene così

  4. #4
    Utente di HTML.it L'avatar di Fox82
    Registrato dal
    Feb 2002
    Messaggi
    459
    Un consiglio che mi verrebbe è di mettere qualche indice sugli attributi che compaiono nei predicati del where più che sul group by...
    Linux user number 403381

    Stop TCPA!

  5. #5
    Utente di HTML.it L'avatar di Cozza
    Registrato dal
    Jan 2001
    Messaggi
    467
    grazie, cmq mettendo l'indice sui campi delle group by migliora te lo giuro, stasera faccio dei test mettendoli anche come mi hai detto tu
    Ho mille libri sotto il letto non leggo più
    ho mille sogni in un cassetto non lo apro più
    parlo da solo e mi confondo e penso
    che in fondo sì sto bene così

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 © 2024 vBulletin Solutions, Inc. All rights reserved.