Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » PostgreSQL »

modificar el aspecto de una vista

Estas en el tema de modificar el aspecto de una vista en el foro de PostgreSQL en Foros del Web. Hola a todos, mi duda es estrictamente de tipo cosmetico. Estoy creando una vista que incluye un campo formado dividiendo dos campos de tipo numerico, ...
  #1 (permalink)  
Antiguo 19/09/2008, 10:00
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
modificar el aspecto de una vista

Hola a todos, mi duda es estrictamente de tipo cosmetico. Estoy creando una vista que incluye un campo formado dividiendo dos campos de tipo numerico, de tipo numeric(7,1)

La vista funciona bien, pero el campo resultante se muestra con como 15 decimales y preferiria que mostrara solo una cantidad razonable de decimales y redondeara el resto o mejor aun que pudiera expresarse como un porcentaje de un numero predeterminado de decimales para que el resto de los campos quepan en el terminal en una sola fila y no estorbe

Seguramente sera una tonteria, pero he mirado la documentacion y no veo nada, y varios intentos en el Google tampoco me llevan a donde quiero, ¿alguien sabe como indicar en la consulta que crea la vista el tipo de campo que debe mostrar?

posgresql 8.3 en Linux

Gracias
  #2 (permalink)  
Antiguo 22/09/2008, 01:06
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 2 meses
Puntos: 13
Respuesta: modificar el aspecto de una vista

La forma de castear tipos de datos en postgresql:
campo::tipo
Por ejemplo:
select campo::integer

Salu2
  #3 (permalink)  
Antiguo 22/09/2008, 04:01
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: modificar el aspecto de una vista

Gracias por la respuesta Seyko, ya habia probado algo similar pero no funciona como esperaba por la conversion

para que nos entendamos

esto va perfectamente, aunque no es necesario porque pg lo identifica solo

select alto:numeric(7,2) from mi tabla

pero lo que intento seria algo asi, los campos alto y ancho son numeric(7,2)

select alto/ancho as prop::numeric(7,2) from mitabla;
  #4 (permalink)  
Antiguo 22/09/2008, 05:00
 
Fecha de Ingreso: febrero-2007
Mensajes: 1.292
Antigüedad: 17 años, 2 meses
Puntos: 13
Respuesta: modificar el aspecto de una vista

Cita:
select alto/ancho as prop::numeric(7,2) from mitabla;
logico! Estas casteando el alias que le das a la division!

Código:
pruebas=# create table dimensiones(alto numeric(7,2), ancho numeric(7,2))
pruebas-# ;
CREATE TABLE
pruebas=# insert into dimensiones VALUES (2, 3);
INSERT 0 1
pruebas=# insert into dimensiones VALUES (5, 4);
INSERT 0 1
pruebas=# insert into dimensiones VALUES (5.40, 4.34);
INSERT 0 1
pruebas=# select * from dimensiones ;
 alto | ancho
------+-------
 2.00 |  3.00
 5.00 |  4.00
 5.40 |  4.34
(3 filas)

pruebas=# select alto/ancho from dimensiones ;
        ?column?
------------------------
 0.66666666666666666667
     1.2500000000000000
     1.2442396313364055
(3 filas)

pruebas=# select (alto/ancho)::numeric(7,2) as prop from dimensiones ;
prop
---------
    0.67
    1.25
    1.24
(3 filas)
Salu2
  #5 (permalink)  
Antiguo 22/09/2008, 08:59
 
Fecha de Ingreso: septiembre-2008
Mensajes: 6
Antigüedad: 15 años, 7 meses
Puntos: 0
Respuesta: modificar el aspecto de una vista

Eureka! esto es justo lo que necesitaba, gracias
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:05.