2
respostas

Selecionar informações repitidas em varias coluna

Olá, eu tenho uma tabela que tem 4 colunas que tem numeros de 1 a 100 e eu precisava selecionar os registros que tem os números iguais até mesmo em colunas diferentes ex:

id 1 , coluna 1 = 10 coluna 2 = 33 coluna 3 = 40 coluna 4 = 24 id 2, coluna 1 = 33 coluna 2 = 24 coluna 4 = 10 coluna 4 = 40 ...

Eu queria dar um select que ele iria agrupar esses registros todos somente os que a ocorrência é maior que 1 .

tem como isso sem que eu precise passar um parametro e dar um select ?

pra fazer isso com numero individuais eu fiz uma query bem grande, só como exemplo :

SELECT * FROM jogos 
WHERE (primeiro = $v1 or primeiro = $v2 or primeiro = $v3 or primeiro = $v4 or primeiro = $v5 or primeiro = $v6 ) 
    AND ( segundo = $v1 or segundo = $v2 or segundo = $v3 or segundo = $v4 or segundo = $v5 or segundo = $v6 ) 
    AND (terceiro = $v1 or terceiro = $v2 or terceiro = $v3 or terceiro = $v4 or terceiro = $v5 or terceiro = $v6 ) 
    AND (quarto = $v1 or quarto = $v2 or quarto = $v3 or quarto = $v4 or quarto = $v5 or quarto = $v6 ) 
    AND (quinto = $v1 or quinto = $v2 or quinto = $v3 or quinto = $v4 or quinto = $v5 or quinto = $v6 ) 
    AND (sexto = $v1 or sexto = $v2 or sexto = $v3 or sexto = $v4 or sexto = $v5 or sexto = $v6 );
2 respostas

Não sei se entendi bem sua pergunta mas voce poderia usar in

WHERE primeiro IN (v1,v2,v3,v4,v5,v6) and segundo in ...;

Voce tambem pode fazer o inverso:

WHERE v1 IN (primeiro, segundo ...) ....;