Re: Como hacer un NVL o DECODE en postgresql

From: Miguel Higuera <miguelstratoss(at)gmail(dot)com>
To: WILLIAM PARRA <wilparra(at)yahoo(dot)com>, pgsql-es-ayuda(at)postgresql(dot)org
Subject: Re: Como hacer un NVL o DECODE en postgresql
Date: 2005-07-06 14:02:57
Message-ID: f11b7a0d05070607025f9cf457@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-es-ayuda

hola señor William.. es muy simple solo debe cambiar el NVL por COALESCE y
listos..

lo del decode no lo se...

lo del OUTER ahí va un ejemplo para tres motores

if ($motor="informix")
$consulta = "SELECT movil.item, inve.descripcion, movil.origen,
movil.cantidad,movil.cantidad AS cantidad_o, movil.cantidad_rec,
movil.cantidad_cargada,movil.valor, movil.iva, movil.descuento,movil.nota,
movil.unidad,movil.costo_tr, movil.valor AS valor_o, movil.descuento AS
desc_o, movil.iva AS iva_o, movil.origen AS origen_o, inve.serializa,
inve.loteo, inve.linea,inve.iva AS iva_inve, inve.unidad AS uni_inve,
movil1.centro, movil1.anuncian, publicac, agencia, medios, edicion,
producto,pagina FROM movil, OUTER movil1, OUTER inve WHERE movil.transaccion=
movil1.transaccion AND movil.numero = movil1.numero AND movil.origen =
movil1.origen AND movil.item = inve.item AND
movil.transaccion='$transaccion' AND
movil.numero = '$numero' $sel_cantidad ORDER BY movil.origen ";

if ($motor == "Oci8po") // ORACLE
$consulta = "SELECT movil.item, inve.descripcion, movil.origen,
movil.cantidad, movil.cantidad AS cantidad_o, movil.cantidad_rec,
movil.cantidad_cargada,movil.valor, movil.iva, movil.descuento,movil.nota,
movil.unidad,movil.costo_tr, movil.valor AS valor_o, movil.descuento AS
desc_o, movil.iva AS iva_o, movil.origen AS origen_o, inve.serializa,
inve.loteo, inve.linea,inve.iva AS iva_inve, inve.unidad AS uni_inve,
movil1.centro, movil1.anuncian, publicac, agencia, medios, edicion,
producto,pagina FROM movil, movil1, inve WHERE movil.transaccion =
movil1.transaccion(+) AND movil.numero = movil1.numero(+) AND movil.origen =
movil1.origen AND movil.item = inve.item(+) AND
movil.transaccion='$transaccion' AND
movil.numero = '$numero' $sel_cantidad ORDER BY movil.origen ";

if ($motor == "postgres")
$consulta = "SELECT movil.item, inve.descripcion, movil.origen,
movil.cantidad, movil.cantidad AS cantidad_o, movil.cantidad_rec,
movil.cantidad_cargada,movil.valor, movil.iva, movil.descuento,movil.nota,
movil.unidad,movil.costo_tr, movil.valor AS valor_o, movil.descuento AS
desc_o, movil.iva AS iva_o, movil.origen AS origen_o, inve.serializa,
inve.loteo, inve.linea, inve.iva AS iva_inve, inve.unidad AS uni_inve,
movil1.centro, movil1.anuncian, publicac, agencia, medios, edicion,
producto,pagina FROM movil LEFT JOIN movil1 ON (movil.transaccion =
movil1.transaccion AND movil.numero = movil1.numero) LEFT JOIN inve ON (
movil.item = inve.item) WHERE movil.origen = movil1.origen
movil.transaccion='$transaccion' AND
movil.numero = '$numero' $sel_cantidad ORDER BY movil.origen ";

Mucha suerte.

El día 5/07/05, WILLIAM PARRA <wilparra(at)yahoo(dot)com> escribió:
>
> Hola amigos:
>
> Como ustedes saben, en Oracle se usan las sentencias NVL, para detectar y
> gestionar valores nulos.
>
> por ejemplo select NVL(codigo_ubica,0) --> Pone cero en la columna de
> resultados si encuentra un codigo_ubica Nulo.
>
> Mi primer cuestionamiento, o inquietud, y si hay una forma de hacerlo en
> postgres.
>
> De otro lado, en Oracle tanbién existe una función Decode, para a partir
> del select, de una vez decodificar los datos
>
> por ejemplo select
> decode(tipo_identificación,'C','Cedula','T','Tarjeta'...) de esta forma
> cuando la consulta encuentra 'C', o 'T' en la consulta, el sistema imprime
> la palabra 'Cédula' o 'Tarjeta'. Habrá alguna forma de hacerlo en
> Postgresql??
>
> Finalmente, me gustaría saber si en postgresql es posible hacer los *OUTER
> JOINS, O seleccion de columnas fantasmas. *
>
> *Les ruego me disculpen si me extendí en mis inquietudes. Agradesco su
> ayuda.*
>
> __________________________________________________
> Correo Yahoo!
> Espacio para todos tus mensajes, antivirus y antispam ¡gratis!
> Regístrate ya - http://correo.espanol.yahoo.com/
>

In response to

Responses

Browse pgsql-es-ayuda by date

  From Date Subject
Next Message Esteban Gutierrez 2005-07-06 15:08:32 Ayuda con una funcion...
Previous Message Paùl espin Huayamabe 2005-07-06 13:28:06 UPGRADE......