Herramientas de usuario

Herramientas del sitio


informatica:bases_de_datos:oracle

Bases de datos Oracle

Operador JOIN (+)

El operador (+) es para realizar OUTER JOIN.

SELECT  ...
FROM a, 
     b
WHERE a.id = b.id(+)

Es lo mismo que:

SELECT ...
FROM a
LEFT JOIN b ON b.id = a.id

Oracle recomienda no usar la notación (+)

Fechas

Extracción

Sacar porción de la fecha:

SELECT
    EXTRACT(YEAR FROM fecha) AS ano,
    EXTRACT(MONTH FROM fecha) AS mes,
    EXTRACT(DAY FROM fecha) AS dia,
FROM tabla

trunc(sysdate) coge la fecha y hora actuales y se queda solo con la fecha

SELECT *
FROM tabla
WHERE fecha < trunc(sysdate)
AND fecha >= trunc(sysdate - 3) -- hace 3 días

Texto

Extracción

Si se quiere quedar con cierta parte de un campo. Por ejemplo, si tenemos un campo con valores del tipo Una cosa - Otra cosa y nos queremos quedar con lo que hay después del guión:

SELECT SUBSTR(campo, INSTR(campo, '-') + 2) AS nombre
FROM tabla

Condicionales

DECODE

SELECT 
    DECODE(id, '3', 'OK', 'KO') AS resultado
FROM tabla
WHERE fecha < sysdate

Si id vale 3, entonces devuelve OK. En caso contrario, KO.

Un Database Link (DBLink) en Oracle es un tipo de objeto que permite realizar una conexión desde una base de datos a otra.

Un dblink es un usuario que pertenece a la base de datos de destino, pero que se configura en la de origen ya que es quien realiza la conexión.

Para ver que Dblinks hay en una BD Oracle, lo podemos consultar de la siguiente forma:

SELECT * FROM DBA_DB_LINKS;
SELECT * FROM ALL_DB_LINKS;
SELECT * FROM USER_DB_LINKS;
informatica/bases_de_datos/oracle.txt · Última modificación: por tempwin