sssì, ho capito l'errore, aspetta un attimo che ci penso
sssì, ho capito l'errore, aspetta un attimo che ci penso
Originariamente inviato da skidx
sssì, ho capito l'errore, aspetta un attimo che ci penso![]()
ogni tanto dovrei farla anche io sta cosa del pensare....![]()
mago merlino era bravo ma l'hanno bannato tempo fa ... :rollo:Originariamente inviato da andrea.paiola
non pensavo fosse così difficile per voi![]()
cosa ti restituisce ?codice:SELECT utenti.id_utenti, utenti.name, FROM_UNIXTIME(utenti.data_registrazione,'%d/%m/%Y') as data_registrazione, COUNT(risorse.id_risorse) as num_risorse, COUNT(voti.id_voti) as num_voti FROM utenti LEFT JOIN risorse ON risorse.utenti_id = utenti.id_utenti LEFT JOIN voti ON voti.utenti_id = risorse.utenti_id WHERE LOWER(utenti.name) LIKE LOWER('$item%') ORDER BY utenti.name LIMIT 100
quella là (con il group by, sennò non gira) non funge andrea, perché se l'utente ha sia voti che risorse otterrà come risultato il prodotto dei due count().
Mi sa che va divisa in due query, ognuna con un count(), per poi scorrerle assieme.
ERRORE #1140 - Mixing of GROUP columns (MIN(),MAX(),COUNT(),...) with no GROUP columns is illegal if there is no GROUP BY clauseOriginariamente inviato da andr3a
mago merlino era bravo ma l'hanno bannato tempo fa ... :rollo:
cosa ti restituisce ?codice:SELECT utenti.id_utenti, utenti.name, FROM_UNIXTIME(utenti.data_registrazione,'%d/%m/%Y') as data_registrazione, COUNT(risorse.id_risorse) as num_risorse, COUNT(voti.id_voti) as num_voti FROM utenti LEFT JOIN risorse ON risorse.utenti_id = utenti.id_utenti LEFT JOIN voti ON voti.utenti_id = risorse.utenti_id WHERE LOWER(utenti.name) LIKE LOWER('$item%') ORDER BY utenti.name LIMIT 100
glappa di lose e stanchezza ... nmon ho testato, volevo togliere il grou proprio per sapere quanti duplicati avesse e risolverla in array_filterOriginariamente inviato da skidx
quella là (con il group by, sennò non gira) non funge andrea, perché se l'utente ha sia voti che risorse otterrà come risultato il prodotto dei due count().
allora è fatto male il db, se per ogni risultato bisogna rifare una query ...Originariamente inviato da skidx
Mi sa che va divisa in due query, ognuna con un count(), per poi scorrerle assieme.![]()
domani se ho tempo rileggo, spiacente![]()
![]()
..... oppure passi un mini dump, ci dici che risultato ti aspetti e testiamo tutti realtime come te![]()
no no, forse non mi sono spiegato bene.Originariamente inviato da andr3a
allora è fatto male il db, se per ogni risultato bisogna rifare una query ...![]()
Bisogna fare due query (indipendenti tra loro, non annidate), la prima con la join e il count su risorse, la seconda con il join e il count su voti, scorrendole assieme perché gli utenti (e quindi il numero di record) son gli stessi.
Sto pensando se c'è il modo per farlo con una sola query (senza contare i duplicati da php, sennò è troppo facile)
può anche darsi... ho fatto tutto da solo...Originariamente inviato da andr3a
allora è fatto male il db, se per ogni risultato bisogna rifare una query ...![]()
![]()
forse non ho capito... comunque se vuoi ti spedisco anche tutti i file PHP... chemmifrega?..... oppure passi un mini dump, ci dici che risultato ti aspetti e testiamo tutti realtime come te![]()
![]()
pensi di sbatterci la testa stasera o posso staccarmi dal pc fino a domattina?Originariamente inviato da skidx
Sto pensando se c'è il modo per farlo con una sola query (senza contare i duplicati da php, sennò è troppo facile)
![]()
vai a dormire, al momento non mi viene una soluzione a query singola