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 ...
Pergunta
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 para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.