FoxPro/Visual FoxPro - SUMAR COLUMNAS DE UNA TABLA

 
Vista:

SUMAR COLUMNAS DE UNA TABLA

Publicado por MARIAN (3 intervenciones) el 16/08/2017 19:39:55
Buenas tardes, requiero sumar una columna de una tabla dada una condicion, mas indica que "SQL:No se encuentra la columna valor"

utilizo un select.

SELECT cod_trab, nom_trab, SUM(valor) as valores FROM nominas2 WHERE Between(desde,CTOD("2016-11-01"),CTOD("2016-11-30")) INTO CURSOR asig
SELECT asig
GO top
SCAN

var_valor= asig.valores
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 Leonardo Daniel A.
Val: 1.115
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

SUMAR COLUMNAS DE UNA TABLA

Publicado por Leonardo Daniel A. (497 intervenciones) el 16/08/2017 20:59:06
Pues segun el query que pones ahi dice muy claramente que estas haciendo un SUM(valor) as valores y te dice "SQL:No se encuentra la columna valor" es porque la columna valor no esta en esa tabla... seguro que se llama asi ?
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
sin imagen de perfil
Val: 1.011
Oro
Ha mantenido su posición en FoxPro/Visual FoxPro (en relación al último mes)
Gráfica de FoxPro/Visual FoxPro

SUMAR COLUMNAS DE UNA TABLA

Publicado por Fidel José (657 intervenciones) el 16/08/2017 22:38:25
Además de lo dicho por Leonardo, hago dos observaciónes: (que no tienen que ver con que el campo "Valor" no existe en la tabla)
1) No utices CTOD(). Eso te hace depender de formato fecha que usas. En su lugar, utiliza una variable de fecha. Si tienes año mes y día, usa Date() para determinar el valor de la variable

ldFecha_Desde = DATE(2016,11,1)
ldFecha_Hasta = GOMONTH(ldFecha_Desde,1) - 1

2) El comando SELECT-SQL tiene su propio BETWEEN que te funcionará más rápido que la determinación que hace la función Between()
1
2
3
4
5
6
ldFecha_Desde = DATE(2016,11,1)
ldFecha_Hasta = GOMONTH(ldFecha_Desde,1) - 1
SELECT cod_trab, nom_trab, SUM(valor) as valores ;
	FROM nominas2 ;
	WHERE DESDE BETWEEN ldFecha_desde AND ldFecha_Hasta ;
	INTO CURSOR asig READWRITE
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

SUMAR COLUMNAS DE UNA TABLA

Publicado por MARIAN (3 intervenciones) el 17/08/2017 15:11:49
si, el campor dela tabla se llama "valor"
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