Preciso de uma grande ajuda, estou elaborando um site de troca de jogos... dessa forma, todo o usuario possui uma lista de jogos que tem e jogos que deseja para troca ... preciso criar uma pagina que apareça todas as combinações possiveis de oportunidade de trocas... ou seja...uma lista onde serão listados combinações de usuarios que desejam os jogos que eu tenho na minha lista, e jogos que eu desejo e que eles possuem na lista deles...o banco esta + - assim:
Usuario (banco de dados dos usuarios cadastrados)
idUsuario | nomeUsuario
Jogos (banco de dados dos jogos cadastrados)
idJogo | nomeJogo
Oferta (lista de jogos que eu tenho)
idOferta | idJogo | idUsuario
Desejo (lista de jogos que eu quero)
idDesejo | idJogo | idUsuario
Agora minha dificuldade é de criar a query para fazer a lista de todas as combinações possiveis de usuarios que possuem os jogos para troca ... pensei em criar uma query com varias condições "OR" , iria criar um while para gravar em uma variavel todas as combinações da query, jogo por jogo, pegaria um jogo que tenho com todos que desejo, depois o proximo jogo que tenho, com todos que desejo e assim até a programação listar todos as combinações de jogos e usuarios para troca, porem se tiver mais de mil combinações, não vai carregar a query, ex: uma query bem crua:
SELECT * FROM desejo a inner join oferta b ON a.idUsuario = b.idUsuario WHERE (b.idJogo = 21 AND a.idJogo = 28) OR (b.idJogo = 1 AND a.idJogo = 8) OR (b.idJogo = 319 AND a.idJogo = 217) OR (b.idJogo = 309 AND a.idJogo = 57) ... etc
Enfim essa logica provavelmente esta incorreta ... apesar de listar os 2 jogos da troca e o usuario, gostaria de saber se alguém pode me passar uma ideia mais otimizada desta query ...
Question
Luiz Antonio
Ola pessoal, tudo bem?
Preciso de uma grande ajuda, estou elaborando um site de troca de jogos... dessa forma, todo o usuario possui uma lista de jogos que tem e jogos que deseja para troca ... preciso criar uma pagina que apareça todas as combinações possiveis de oportunidade de trocas... ou seja...uma lista onde serão listados combinações de usuarios que desejam os jogos que eu tenho na minha lista, e jogos que eu desejo e que eles possuem na lista deles...o banco esta + - assim:
Usuario (banco de dados dos usuarios cadastrados)
idUsuario | nomeUsuario
Jogos (banco de dados dos jogos cadastrados)
idJogo | nomeJogo
Oferta (lista de jogos que eu tenho)
idOferta | idJogo | idUsuario
Desejo (lista de jogos que eu quero)
idDesejo | idJogo | idUsuario
Agora minha dificuldade é de criar a query para fazer a lista de todas as combinações possiveis de usuarios que possuem os jogos para troca ... pensei em criar uma query com varias condições "OR" , iria criar um while para gravar em uma variavel todas as combinações da query, jogo por jogo, pegaria um jogo que tenho com todos que desejo, depois o proximo jogo que tenho, com todos que desejo e assim até a programação listar todos as combinações de jogos e usuarios para troca, porem se tiver mais de mil combinações, não vai carregar a query, ex: uma query bem crua:
Enfim essa logica provavelmente esta incorreta ... apesar de listar os 2 jogos da troca e o usuario, gostaria de saber se alguém pode me passar uma ideia mais otimizada desta query ...
Agradeço a todos pela atenção!!!
Link to comment
Share on other sites
0 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.