Cómo usar Tener sin seleccionar un campo en mysql

Estoy usando esta consulta:

    SELECCIONA `proyectos`. *, (SELECCIONA SUMA (` monto`) DE `cuentaproyectopago` DONDE` proyectos_id` = `proyectos``id`) COMO` pagado` DESDE `proyectos` INNER JOIN` pujas` EN `pujas`. `id` =` proyectos``bids_id` TENIENDO `pujas``monto`> =` pagado`

me sale este error: columna desconocida 'bids.amount' en 'teniendo cláusula

Pero si cambio el código a esto:

    SELECCIONE `proyectos`. *,` Ofertas`` monto`, (SELECCIONE SUMA (`monto`) DE` cuentaproyectopago` DONDE `proyectos_id` =` proyectos``id`) COMO `pagado` DESDE` proyectos` INNER JOIN `bids` ON` bids``id` = `projects``bids_id` TENIENDO` bids``amount`> = `pagado`

el problema se resuelve pero no quiero usar Seleccionar bids.amount

preguntado el 08 de noviembre de 11 a las 14:11

1 Respuestas

Utilice una tabla derivada, por ejemplo, algo como esto:

SELECT `DT1`.* 
FROM   (SELECT  `projects`.*, 
                (SELECT SUM(`amount`) 
                FROM `accountprojectspayment` 
                WHERE `projects_id` = `projects`.`id`) AS `payed`                   
        FROM `projects`) AS `DT1`            
INNER JOIN `bids` ON `bids`.`id` = `DT1`.`bids_id`
WHERE `bids`.`amount` >= `DT1`.`payed`;

respondido 08 nov., 11:19

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.