Visualizzazione dei risultati da 1 a 7 su 7

Discussione: [mysql]query enorme

  1. #1

    [mysql]query enorme

    ciao a tutti

    a me servirebbe eseguire un query molto pesante diciamo che comprenda piu' o meno 7000/8000 record... e fino a qui no problem...

    il problema e' che questi record li vado a prelevare da tutte le tabelle del mio db... e sono piu' o meno 160...

    so che il db e' stato organizzato male... ma non l'ho creato io...
    io devo solo apportare delle modifiche....

    ora, quando vado a eseguire la query mi dice che mysql puo' gestire al massimo 61 tabelle per volta... come posso fare a eseguire la mia query su 160 tabelle???

    Too many tables; MySQL can only use 61 tables in a join

    grazie
    La vita sarebbe piu' facile se avessi il codice sorgente!

  2. #2
    Moderatore di Server Apache L'avatar di marketto
    Registrato dal
    Sep 2001
    Messaggi
    5,858
    VVoVe:




    esegui 3 distinte query, memorizzi tramite php i risultati dentro un array per aggregarli alla fine
    think simple think ringo

  3. #3
    ci avevo pensato...

    ma mi chiedevo se non si potesse settare una qualche variabile di mysql in modo da fare eseguire tutto insieme...
    La vita sarebbe piu' facile se avessi il codice sorgente!

  4. #4
    Se ci sono 160 tabelle relazionate tra loro quello non e' un database. E' un aborto scaduto per di piu'.

    Se la portata e' 61 e tu hai 160 fai tre viaggi. Nel frattempo butta il db. 160 ... tabelle possono esserci, ma non in relazione tra di loro da esigere il JOIN.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  5. #5
    Originariamente inviato da piero.mac
    Se ci sono 160 tabelle relazionate tra loro quello non e' un database. E' un aborto scaduto per di piu'.

    Se la portata e' 61 e tu hai 160 fai tre viaggi. Nel frattempo butta il db. 160 ... tabelle possono esserci, ma non in relazione tra di loro da esigere il JOIN.

    io lo butterei via il db... poi chi lo ricrea...???
    io non ho proprio voglia di rifarlo...
    La vita sarebbe piu' facile se avessi il codice sorgente!

  6. #6
    Originariamente inviato da zip2k
    io lo butterei via il db... poi chi lo ricrea...???
    io non ho proprio voglia di rifarlo...
    Quello che penso e' che il problema non e' nato ora, quindi le tabelle, dando un minimo di fiducia a chi le ha strutturate, possono vivere di vita autonoma, o quanto meno a gruppi omogenei.

    La mia convinzione e' che sia la tua query a non essere congruente, altrimenti questo limite si sarebbe gia' evidenziato in precedenza.

    Fai una o piu' tabelle temporanee per appoggiare i dati che raccogli e poi selezioni su quest'ultima.


    Il silenzio è spesso la cosa migliore. Pensa ... è gratis.

  7. #7
    provero'... cmq avevamo un po' di fiducia nel tizio che ha strutturato il db... purtroppo si e' rivelato essere un pirla...

    quindi le soluzioni sono 2... o mi rifaccio il db (inutile dispendio di energie nonche' tempo) oppure fare come dici te...

    quindi provero' come dici te...

    per il momento grazie...

    se dovessi avere qualche problema non esitero' a farsi sentire...
    La vita sarebbe piu' facile se avessi il codice sorgente!

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.