up
up
Spero che un anima pia riesca a farmi risolvere questo dilemma![]()
vediamo se ho capito, date queste due tabelle quello che vuoi ottenere è:Originariamente inviato da Sp4C3Death
codice:Tabella CREDITI ============================= ID Utente | Punti | Nome Utente ============================= 1 |2 |Pino 2 |9 |Luca 3 |1 |Antonio 4 |0 |Ciccio ------------------------------------- Tabella Prodotti vinti ============================= ID Utente | Prodotto vinti ============================= 1 |pendrive 2 |fotocamera 1 |hard disk 3 |occhiali 4 |nulla 2 |obbiettivo fotocamera -------------------------------------
giusto?codice:============================== nome |punti |Prodotti ============================== Pino |2 |pendrive Luca |9 |fotocamera Antonio |3 |occhiali
Il calcolatore è straordinariamente veloce, accurato e stupido.
L'uomo è incredibilmente lento, impreciso e creativo.
L'insieme dei due costituisce una forza incalcolabile.
(Albert Einstein)
Si ora per esempio questo tizio "PINO" è l'utente con l'id 1...come puoi vedere ha preso due prodotti.Originariamente inviato da las
vediamo se ho capito, date queste due tabelle quello che vuoi ottenere è:
giusto?codice:============================== nome |punti |Prodotti ============================== Pino |2 |pendrive Luca |9 |fotocamera Antonio |3 |occhiali
Ora io voglio semplicemente che il programma non mi mostri tutti e due i prodotti presi, ma in modo random, mi deve dare solo un prodotto (in questo caso o pendrive o hardisk).
Ciao!
ecco per fare questo devi usare esattamente la query che ti ho già dato, che poi non era altro che la query che ti aveva suggerito Potacchione, l'unica precisazione da fare è che il prodotto che ti darà non sarà random ma semplicemente il primo che incontra nella lettura, ma per l'effetto che devi ottenere (avere un solo prodotto per ogni cliente) non credo che random o meno cambi qualcosa.
![]()
Il calcolatore è straordinariamente veloce, accurato e stupido.
L'uomo è incredibilmente lento, impreciso e creativo.
L'insieme dei due costituisce una forza incalcolabile.
(Albert Einstein)
Eh no è proprio qui il bello, a me serve proprio che il prodotto mostrato sia random, altrimenti sarebbe stato semplice elencare solo il primo![]()
Ad ogni modo c'è qualcuno che sa come fare questa cosa?
Ciao e grazie del vostro aiuto
allora l'unica cosa che mi viene in mente è fare una subquery
codice:SELECT crediti.Punti, crediti.NomeUtente, (SELECT prodotti.Prodotto FROM prodotti WHERE prodotti.idUtente=crediti.idUtente ORDER BY RAND() LIMIT 0,1 ) AS prodottoVinto FROM crediti WHERE crediti.Punti>0
![]()
Il calcolatore è straordinariamente veloce, accurato e stupido.
L'uomo è incredibilmente lento, impreciso e creativo.
L'insieme dei due costituisce una forza incalcolabile.
(Albert Einstein)
Ti ringrazio, appena possibile provo...Ti chiedo un altra cosa, ma non voglio approfittarne della tua gentilezza
Mettiamo il caso che un utente ha 6 premi, ed io voglio visualizzarne solo 3 come posso fare? Ho provato con il comando LIMIT, ma così ovviamente come risposta mi da solo 3 dei prodotti trovati tra tutti gli utenti. Io invece vorrei visualizzare solo n premi che ogni utente ha vinto.
Ciao!
Up
Mettiamo il caso che un utente ha 6 premi, ed io voglio visualizzarne solo 3 come posso fare? Ho provato con il comando LIMIT, ma così ovviamente come risposta mi da solo 3 dei prodotti trovati tra tutti gli utenti. Io invece vorrei visualizzare solo n premi che ogni utente ha vinto.
Ciao!
oltre al LIMIT devi mettere WHERE idUtente="5" e hai risolto
Il calcolatore è straordinariamente veloce, accurato e stupido.
L'uomo è incredibilmente lento, impreciso e creativo.
L'insieme dei due costituisce una forza incalcolabile.
(Albert Einstein)