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

Crear un campo calculado para un select.

Estas en el tema de Crear un campo calculado para un select. en el foro de PostgreSQL en Foros del Web. Hola. Estoy de nuevo por estos lados, hace rato que no participaba, bueno, hoy me trae una consulta bastante sencilla. Quiero construir una función en ...
  #1 (permalink)  
Antiguo 24/03/2011, 17:33
 
Fecha de Ingreso: noviembre-2004
Ubicación: Valle del cauca / Cali
Mensajes: 112
Antigüedad: 19 años, 5 meses
Puntos: 1
Pregunta Crear un campo calculado para un select.

Hola.

Estoy de nuevo por estos lados, hace rato que no participaba, bueno, hoy me trae una consulta bastante sencilla. Quiero construir una función en pgplsql que me calcule un valor y lo pueda obtener desde un select.

ejemplo:

CREATE TABLE datos.importancia
(
id bigint,
nombre character varying(50) NOT NULL,
importancia smallint
)

esta tabla contiene el grado de importancia, lo que define cual es la de mas prioridad.

pongamos un ejemplo.

'Alta', 5
'Media', 2
'Baja', 1
'Medio importante', 3

Tabla empleados

CREATE TABLE datos.empleado
(
id bigint,
nombre character varying(100) NOT NULL,
)

y ahora la tabla direcciones, la cual esta relacionada con empleados y con importancia.

CREATE TABLE datos.direcciones
(
id bigint,
direccion character varying(100) NOT NULL,
empleado_id,
importancia_id
)

CONSTRAINT "FK_direcciones_1" FOREIGN KEY (empleado_id)
REFERENCES datos.empleado (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION

CONSTRAINT "FK_direcciones_2" FOREIGN KEY (imortancia_id)
REFERENCES datos.importancia (id) MATCH SIMPLE
ON UPDATE NO ACTION ON DELETE NO ACTION

ahora lo que deseo es obtener la dirección mas importante para cada empleado, donde la mas importante es la que tenga mayor valor de importancia.


El rollo es que deseo hacer un select de esta forma

Select nombre, direccion_id from datos.empleado;

donde direccion_id sea el id de la tabla direcciones que le corresponde al empleado y sea una funcion de pgplsql.

espero haber sido lo sufientemente claro, no esta de mas aclarar que un empleado puede tener mas de una direccion de diferente categoria de importancia.

Etiquetas: select, campos, calculadora
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 19:27.