MySQL - problemas con update case

 
Vista:
Imágen de perfil de fernando
Val: 14
Ha aumentado su posición en 4 puestos en MySQL (en relación al último mes)
Gráfica de MySQL

problemas con update case

Publicado por fernando (5 intervenciones) el 20/08/2020 22:21:57
ejecuto la siguiente consulta y no me funciona el case...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
select remitoscasual.nroguia,
remitoscasual.tipobulto,remitoscasual.cbultos,convenio.1bulto,
remitoscasual.valor1bulto= case
when remitoscasual.tipobulto=1 and remitoscasual.nroguia='' then convenio.1bulto
when remitoscasual.tipobulto=2 and remitoscasual.nroguia='' then convenio.vinos
when remitoscasual.tipobulto=3 and remitoscasual.nroguia='' then convenio.pallet
end valor1bulto,
remitoscasual.valorbultoe= case
when remitoscasual.tipobulto=1 and remitoscasual.nroguia='' then
(remitoscasual.cbultos-1+remitoscasual.cbultose)*convenio.bultoad
when remitoscasual.tipobulto=2 and remitoscasual.nroguia='' then 0
when remitoscasual.tipobulto=3 and remitoscasual.nroguia='' then 0
end valorbultoe,
remitoscasual.total= case
when remitoscasual.tipobulto=1 and remitoscasual.nroguia='' then
(convenio.1bulto)+((remitoscasual.cbultos-1+remitoscasual.cbultose)*convenio.bultoad)
when remitoscasual.tipobulto=2 and remitoscasual.nroguia='' then
(remitoscasual.cbultos)*convenio.vinos
when remitoscasual.tipobulto=3 and remitoscasual.nroguia='' then
(remitoscasual.cbultos)*convenio.pallet end
total
from
remitoscasual
left join zonalocalidad on remitoscasual.localidad=zonalocalidad.localidad
and remitoscasual.id in (select id from vmaxremeven)
inner join convenio on convenio.idzona=zonalocalidad.zona and convenio.idcliente=90
*******Resultado de la consulta*******************************************************************************************
-------------------------------------------------------------------------------------------------------------------------------
nroguia tipobulto cbultos 1bulto valor1bulto valorbultoe total
1 7 130.00 1 1 1

valor1bulto deberia ser igual a 1bulto si se cumple la condiciòn del case...... y no se porque no funciona...?
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Manuel
Val: 19
Ha aumentado 1 puesto en MySQL (en relación al último mes)
Gráfica de MySQL

problemas con update case

Publicado por Manuel (10 intervenciones) el 04/09/2020 12:08:45
No estoy seguro, pero ten en cuenta que no es lo mismo que nroguia esté vacío o que sea null. Además en lugar del ='', si es de texto, deberías usar like para comparar.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar