Herramientas de usuario

Herramientas del sitio


informatica:bases_de_datos:oracle

Diferencias

Muestra las diferencias entre dos versiones de la página.

Enlace a la vista de comparación

Ambos lados, revisión anteriorRevisión previa
Próxima revisión
Revisión previa
informatica:bases_de_datos:oracle [2020/10/05 12:33] – [Operador JOIN (+)] tempwininformatica:bases_de_datos:oracle [2021/10/19 14:43] (actual) – [Dblinks] tempwin
Línea 25: Línea 25:
  
   * [[https://stackoverflow.com/questions/4020786/oracle-operator|Oracle "(+)" Operator]] (Stack Overflow)   * [[https://stackoverflow.com/questions/4020786/oracle-operator|Oracle "(+)" Operator]] (Stack Overflow)
 +
 +===== Fechas =====
 +
 +==== Extracción ====
 +
 +Sacar porción de la fecha:
 +
 +<code sql>
 +SELECT
 +    EXTRACT(YEAR FROM fecha) as ano,
 +    EXTRACT(MONTH FROM fecha) as mes,
 +    EXTRACT(DAY FROM fecha) as dia,
 +FROM tabla
 +</code>
 +
 +''trunc(sysdate)'' coge la fecha y hora actuales y se queda solo con la fecha
 +
 +<code sql>
 +SELECT *
 +FROM tabla
 +WHERE fecha < trunc(sysdate)
 +AND fecha >= trunc(sysdate - 3) -- hace 3 días
 +</code>
 +
 +===== 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:
 +
 +<code sql>
 +SELECT SUBSTR(campo, INSTR(campo, '-') + 2) AS nombre
 +FROM tabla
 +</code>
 +===== Condicionales =====
 +
 +==== DECODE ====
 +
 +<code sql>
 +SELECT 
 +    DECODE(id, '3', 'OK', 'KO') as resultado
 +FROM tabla
 +WHERE fecha < sysdate
 +</code>
 +
 +Si ''id'' vale 3, entonces devuelve ''OK''. En caso contrario, ''KO''.
 +
 +===== Dblinks =====
 +
 +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:
 +
 +<code sql>
 +select * from DBA_DB_LINKS;
 +select * from ALL_DB_LINKS;
 +select * from USER_DB_LINKS;
 +</code>
 +
 +  * [[https://inmensia.com/blog/20070329/database_link_oracle.html|Creación y Uso de DBLinks en Oracle]]
informatica/bases_de_datos/oracle.1601894002.txt.gz · Última modificación: por tempwin