sql >> Base de Datos >  >> RDS >> Mysql

Use el valor de la columna de la tabla para LIMIT al realizar la combinación

Supongo que solo necesita incluir un número de fila con cada valor seleccionado y limitar los resultados por el número de filas, algo como esto:(no probado)

SELECT T0.experiment_id as `id`,   
(SELECT SUM(x.value) from       
 (SELECT value,@rownum := @rownum + 1 AS rownum           
  FROM data         
  JOIN (SELECT @rownum := 0) r
  WHERE experiment_id = t0.experiment_id         
  ORDER BY value             
 ) AS x
WHERE x,rownum < t0.clip_index
) AS `sum`
 FROM data_clip AS t0

consulte:MySQL:obtener el número de fila al seleccionar