Ver Mensaje Individual
  #9 (permalink)  
Antiguo 09/04/2013, 16:30
Avatar de dashtrash
dashtrash
Colaborador
 
Fecha de Ingreso: abril-2007
Ubicación: Ni en Sevilla,ni en Sanlúcar..qué más da..
Mensajes: 927
Antigüedad: 17 años, 7 meses
Puntos: 270
Respuesta: Seleccionar registros de dos tablas según criterio

Soy un poco vago, y sólo he hecho una tabla llamada "aa", con id, maxpeso, y totalpeso.
Con los datos del ejemplo, la query:

Código SQL:
Ver original
  1. SET @a:=0;
  2. SET @b:=0;
  3. SELECT p1.id,IF(p1.posicion >= p2.posicion,0,1) grupo
  4.     FROM
  5.         (SELECT id,@a AS posicion,@a:=@a+1 FROM aa ORDER BY maxpeso DESC) p1
  6.         INNER JOIN
  7.         (SELECT id,@b AS posicion,@b:=@b+1 FROM aa ORDER BY totalpeso DESC) p2
  8.         ON p1.id=p2.id ORDER BY grupo;

da como resultado:
id;grupo
1;0
4;0
2;1
3;1
5;1
No me he fijado mucho en cuál debe ser la prioridad en caso de empate, pero eso se ajusta con el >= del IF.
Los que van al grupo 0, son los clasificados por pez más grande.