Consulta devuelve null
Buenos dias.
Tengo la siguiente consulta con la que quiero obtener el ultimo precio de compra UPC y el ultimo precio de venta UPV y el margen a ultimo precio, que sera la resta del UPV - UPC. La consulta funciona perfectamente, el problema es que si no ha habido ninguna compra me devuelve null, en UPC y UPV, cuando lo que quiero es que me devuelva 0 en UPC y en UPV el precio y no NULL como hace, aunque si que tiene movimiento. pongo aqui la consulta SQL. Estoy usando firebird 2.5
Gracias y un saludo. |
Usa coalesce también.
Aunque lo ideal es no tener campos con valores nulos, "not null default 0" |
Si la consulta la haces sobre albaprovelineas y si esta tabla no tiene lineas no te devolverá ningun registro, por lo tanto obtienes valores NULOS en todos los campos. Me imagino que eso es lo que te está pasando.
Tal vez deberías utilizar un CASE, para determinar cuando hay o no registros en la tabla de compras y hacer algo diferente. |
Cita:
Todos los campos numéricos están como not null y default 0, por lo que no hay ningún campo numérico a null. El problema es que la primera sentencia, la del UPC, no devuelve ningún resultado, pues no hay ninguna compra de este producto, y me devuelve toda la sentencia a null. Me gustaría saber si tiene arreglo con este tipo de consulta, y no buscar otra solución, como hacerlo en un procedimiento almacenado, p.e. Gracias. |
Hola Neftali.
Si, era por ver, si había alguna solución, que se me había pasado, en este caso utilizar el CASE para ver si la compra tiene movimientos, lo veo lioso para después darle mantenimiento, prefiero un Procedimento o un Execute block. Gracias y un saludo. |
Cita:
|
Cita:
devuelve null. ( articulo_id = 978798878 no existe ) También devuelve null |
Cierto, has dicho que no hay null, lo había olvidado.
|
Creo que lo mejor es que hagas un procedimiento almacenado que devuelva cero en caso de nulo.
|
Hola
O se podría hacer algo "menos complejo"...
Saludos |
La franja horaria es GMT +2. Ahora son las 20:41:22. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi