Visual Basic - Sentencia SQL no funciona... Ojala pudieran ayudar

Life is soft - evento anual de software empresarial
 
Vista:

Sentencia SQL no funciona... Ojala pudieran ayudar

Publicado por Froy (185 intervenciones) el 27/11/2003 19:47:08
foro tengo esta pregunta..
tengo una query
Select CONVERT(DECIMAL(9,2),AVG(preg4)) as Promedio From TPreguntas where preg4 > 0
me presenta el resultado pero no me da los decimales bien.. el resultado deberia ser 9.4 y me arroja 9.00 que podra ser??? AYUDA!
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

RE:Sentencia SQL no funciona... Ojala pudieran ayu

Publicado por Cecilia Colalongo (3116 intervenciones) el 28/11/2003 11:07:25
Aumenta la precisión en el CONVERT y con eso debería funcionar, revisa en la ayuda los rangos, sino utiliza un tipo de dato más grande. Es más prudente trabajar con todos los decimales y recién hacer los redondeos en la interfaz final que en una consulta.
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

No cecilia no funcina tampoco

Publicado por Froy (185 intervenciones) el 28/11/2003 17:00:15
hice ahora estos dos y asi tampoco!!

select cast(sum(preg3)/12.00 as decimal(10,2)) From TPreguntas where preg3 > 0

Select CONVERT(DECIMAL(10,5),AVG(preg4)) as Promedio From TPreguntas where preg4 > 0

Tendre que insertar los los valores de las preguntas en DECIMALES??? espero que no sea eso porque son calificaciones del 1 al 10 que le tengo que dar ademas son 70 campos y eso lleva tiempo.. que sera??? alguien me puede echar la mano?
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

RE:Sentencia SQL no funciona... Ojala pudieran ayu

Publicado por DECOY (20 intervenciones) el 28/11/2003 17:18:15
SOLO TIENES QUE USARLA ASI
Select ROUND(CONVERT(DECIMAL(9,2),AVG(preg4)),2) as Promedio
From TPreguntas where preg4 > 0

Espero que te sirva,cualquier aclaracion no dudes en comunicarmela
Saludos..
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

Nop... tampoco... ME COMIENZO A DESESPERAR..

Publicado por Froy (185 intervenciones) el 28/11/2003 17:39:30
checate lo hice asi...

Select Round(CONVERT(DECIMAL(9,2),AVG(preg9)),2) as Promedio From TPreguntas where preg9 > 0
el resultado debe ser 8.33 y me da 8.00
No me esta mostrando los decimales....!! ya me empiezo a desesperar.. sera que me hace falta instalarle alguna aplicacion, o que tipo de datos debo de tener en los campos.. tengo el NUMERICO... AYUDA!!
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

Perdon el campo es SMALLINT

Publicado por Froy (185 intervenciones) el 28/11/2003 17:45:27
Si ese es el tipo de dato que le puse debido a que solo utilizare un numero en ese campo y cuando mucho 2

sera eso?? el tipo de dato??? SMALLINT
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

Ya encontre la solucion

Publicado por Froy (185 intervenciones) el 28/11/2003 17:49:08
La solucion esta en el tipo de campo.... lo cambie a REAL y funciono a la perfeccion... ni modo tendre que cambiar todos los campos... son mas de 70.. gracias de todas formas por su orientacion....
see you!!
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

RE:Ya encontre la solucion

Publicado por Cecilia Colalongo (3116 intervenciones) el 29/11/2003 21:51:33
No tienes porque cambiar los tipos de datos:

SELECT AVG(CAST(Preg4 AS REAL)) AS Promedio
FROM TPreguntas where preg4 > 0
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