ERROR #1351 - View's SELECT contains a variable or parameter
Publicado por kevin callupe (1 intervención) el 16/07/2019 08:10:55
Tengo una consulta de varias tablas el cual llamare tabla_construida, que me muestra lo siguiente:
region | semana | tipo_trabajo | trab_ejecutados
LIMA | 1 | Atenc. Coorp | 1
LIMA | 2 | Atenc. Coorp | 0
LIMA | 3 | Atenc. Coorp | 2
LIMA | 1 | Atps | 0
LIMA | 2 | Atps | 27
LIMA | 3 | Atps | 17
lo que busco es crear una vista que me acumule lo que se tiene un registro antes, dependiendo de que sea de la misma region y del mismo trabajo. si hago una consulta el query seria el siguiente:
******************************
SELECT region
, semana
, tipo_trabajo
, trab_ejecutados
, @acumulado_eje := if( (region,tipo_trabajo)=(@region,@trabajo)
, @acumulado_eje
, ifnull( concat( @region := region
, @trabajo := tipo_trabajo
, null
)
, 0
)
)
+ trab_ejecutados acumulado1
FROM tabla_construida t
JOIN ( SELECT @acumulado_eje := 0
, @region := null
, @trabajo := null
) vars
***************************
lo cual me muestra de la siguiente manera:
region | semana | tipo_trabajo | trab_ejecutados | acumulado1
LIMA | 1 | Atenc. Coorp | 1 | 1
LIMA | 2 | Atenc. Coorp | 0 | 1
LIMA | 3 | Atenc. Coorp | 2 | 3
LIMA | 1 | Atps | 0 | 0
LIMA | 2 | Atps | 27 | 27
LIMA | 3 | Atps | 17 | 44
pero cuando quiero crear una vista con este codigo, me sale el siguiente error
#1351 - View's SELECT contains a variable or parameter
habra alguna manera de crear una vista que acepte los @ ?
Estoy tratando de realizar esta vista porque despues necesito llamarla desde powerbi, para mostrar unos cuadros estadisticos
region | semana | tipo_trabajo | trab_ejecutados
LIMA | 1 | Atenc. Coorp | 1
LIMA | 2 | Atenc. Coorp | 0
LIMA | 3 | Atenc. Coorp | 2
LIMA | 1 | Atps | 0
LIMA | 2 | Atps | 27
LIMA | 3 | Atps | 17
lo que busco es crear una vista que me acumule lo que se tiene un registro antes, dependiendo de que sea de la misma region y del mismo trabajo. si hago una consulta el query seria el siguiente:
******************************
SELECT region
, semana
, tipo_trabajo
, trab_ejecutados
, @acumulado_eje := if( (region,tipo_trabajo)=(@region,@trabajo)
, @acumulado_eje
, ifnull( concat( @region := region
, @trabajo := tipo_trabajo
, null
)
, 0
)
)
+ trab_ejecutados acumulado1
FROM tabla_construida t
JOIN ( SELECT @acumulado_eje := 0
, @region := null
, @trabajo := null
) vars
***************************
lo cual me muestra de la siguiente manera:
region | semana | tipo_trabajo | trab_ejecutados | acumulado1
LIMA | 1 | Atenc. Coorp | 1 | 1
LIMA | 2 | Atenc. Coorp | 0 | 1
LIMA | 3 | Atenc. Coorp | 2 | 3
LIMA | 1 | Atps | 0 | 0
LIMA | 2 | Atps | 27 | 27
LIMA | 3 | Atps | 17 | 44
pero cuando quiero crear una vista con este codigo, me sale el siguiente error
#1351 - View's SELECT contains a variable or parameter
habra alguna manera de crear una vista que acepte los @ ?
Estoy tratando de realizar esta vista porque despues necesito llamarla desde powerbi, para mostrar unos cuadros estadisticos
Valora esta pregunta


0