Función en mysql
Tengo un problemilla con una función en mysql se supone que debo crear una función que reciba como parámetro el numero de una factura y se obtenga el total a pagar de dicha factura. Ya hice la consulta y esta bien pero al momento de correrla en la consola me sale un error...
Esta es la función que tengo
delimiter //
drop function if exists total; //
create function total(fact int)returns int
begin
declare resultado integer;
set resultado:=select sum(pventa*detallefactura.cantidad) from productos,detallefactura,factura where detallefactura.consecutivo=factura.consecutivo and detallefactura.producto=productos.codigo and detallefactura.consecutivo=fact;
return resultado;
end; //
delimiter ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'selec
t sum(pventa*detallefactura. Cantidad) from productos, detallefactura, factura' at
line 4
intento cambiarlo asi y tampoco
delimiter //
drop function if exists total; //
create function total(in fact int)returns int
begin
declare resultado integer;
set resultado:=select sum(pventa*detallefactura.cantidad) from productos,detallefactura,factura where detallefactura.consecutivo=factura.consecutivo and detallefactura.producto=productos.codigo and detallefactura.consecutivo=fact;
return resultado;
end; //
delimiter ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'in fa
ct int)returns int
begin
declare resultado integer;
set resultado:=selec' at line 1
Esta es la función que tengo
delimiter //
drop function if exists total; //
create function total(fact int)returns int
begin
declare resultado integer;
set resultado:=select sum(pventa*detallefactura.cantidad) from productos,detallefactura,factura where detallefactura.consecutivo=factura.consecutivo and detallefactura.producto=productos.codigo and detallefactura.consecutivo=fact;
return resultado;
end; //
delimiter ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'selec
t sum(pventa*detallefactura. Cantidad) from productos, detallefactura, factura' at
line 4
intento cambiarlo asi y tampoco
delimiter //
drop function if exists total; //
create function total(in fact int)returns int
begin
declare resultado integer;
set resultado:=select sum(pventa*detallefactura.cantidad) from productos,detallefactura,factura where detallefactura.consecutivo=factura.consecutivo and detallefactura.producto=productos.codigo and detallefactura.consecutivo=fact;
return resultado;
end; //
delimiter ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that
corresponds to your MySQL server version for the right syntax to use near 'in fa
ct int)returns int
begin
declare resultado integer;
set resultado:=selec' at line 1
1 respuesta
Respuesta
1