SELECT NOMBRE_E 'EMPLEADO'
FROM EMPLEADOS
WHERE IDEMPLEADO = (
SELECT IDEMPLEADO FROM ENVIOS WHERE IDPRODUCTO = (
SELECT B.IDPRODUCTO
FROM ENVIOS B
GROUP BY B.IDPRODUCTO
ORDER BY COUNT(*) DESC
LIMIT 1
)
)
ERROR: Subquery returns more than 1 row
如何解决?
最佳答案
一个快速修复方法是添加另一个 Limit 1。但如果没有更多信息,很难说它是否正确。
SELECT NOMBRE_E 'EMPLEADO'
FROM EMPLEADOS
WHERE IDEMPLEADO = (
SELECT IDEMPLEADO FROM ENVIOS WHERE IDPRODUCTO = (
SELECT B.IDPRODUCTO
FROM ENVIOS B
GROUP BY B.IDPRODUCTO
ORDER BY COUNT(*) DESC
LIMIT 1
)
LIMIT 1
)
关于mysql - 多个子查询,一个返回多于1行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39882411/