Anda di halaman 1dari 6

Comparte

Inicio
Videos
Noticias
Productos
Quien Soy!
Contáctenos
Que buscas... Search

Aprende a Usar la PL-SQL Function en Oracle TO_CHAR Eficientemente en PL-SQL


Packages en Oracle

Aprender a utilizar de forma eficiente la PL-SQL Function en Oracle TO_CHAR te permitirá


transformar datos numéricos y de fecha a datos de tipo texto proporcionándole el formato que desees para cada dato en tus PL-SQL Packages en
Oracle. La PL-SQL Function en Oracle TO_CHAR es muy útil cuando se requiere formatear los datos que se van a mostrar en una consulta SELECT
en la base de datos en tus PL-SQL Packages en Oracle.

La PL-SQL Function en Oracle TO_CHAR cuenta con tres parámetros cuya sintaxis es la siguiente:

/* PL-SQL Function en Oracle */

TO_CHAR(<fecha/número>,<formato>,<separadores>)

Fecha: Corresponde a un dato de tipo fecha (Date)

Número: Corresponde a un dato de tipo numérico (Number)

Formato: Corresponde a una cadena de caracteres que permite dar formato al dato que se está transformando. Existen muchos formatos que se pueden
usar tanto para las fechas como para los números, vamos a revisar los más utilizados.

Separadores: Corresponde a una cadena de caracteres que permite definir los caracteres separadores para los miles y los decimales. Este parámetro se
usa solo para los datos numéricos.

La PL-SQL Function en Oracle TO_CHAR se puede ocupar con un comando SQL o asignándola directamente a una variable. Revisemos a
continuación algunos ejemplos prácticos que te permitan entender de mejor forma como se debe usar la PL-SQL Function en Oracle TO_CHAR en tus
PL-SQL Packages en Oracle:

Ejemplo #1: Supone que debes mostrar la fecha de ingreso de un empleado en varios formatos distintos, veamos cómo se hace:

/* PL-SQL Function en Oracle */

Select

To_char(emp.fec_ingreso,’dd/mm/yyyy’),

To_char(emp.fec_ingreso,’yyyy-mm-dd’),

To_char(emp.fec_ingreso,’month’), Esta web usa cookies

Este sitio usa Cookies propias y de terceros para mejorar su experiencia de navegación y mejorar nuestros servicios según sus hábitos de navegación. Si continúa navegando,
To_char(emp.fec_ingreso,’yyyy-mm-dd hh:mi:ss’),
consideramos que acepta su uso, pero puede optar por no participar si lo desea. Aceptar Leer mas...
To_char(emp.fec_ingreso,’dd/mm/yyyy hh24:mi:ss’), 192.185.229.173
To_char(emp.fec_ingreso,’d’)

From t_empleado emp

Where emp.rut = pin_rut;

Los caracteres de la PL-SQL Function en Oracle TO_CHAR corresponden a: dd= número del día, mm= número del mes, yyyy= número del año, hh=
hora am/pm,
Comparte hh24= formato en 24 horas, mi= minutos, ss= segundos, d= día de la semana y month= nombre del mes. El resultado de esta query en tus
PL-SQL Packages en Oracle es el siguiente:

/* PL-SQL Function en Oracle */

01/04/2011

2011-04-01

Abril

2011-04-01 05:38:14

01/04/2011 17:38:14

TÚ REPORTE: “Cómo Construir un SELECT Eficiente en ORACLE en Solo 7 Pasos”

¡ Haz Click Aquí y Descárgalo GRATIS Ahora !

Ejemplo #2: Supone que debes mostrar el sueldo del empleado y sus días trabajados en un formato más amigable y claro a la vista, vamos como se
hace usando TO_CHAR:

/* PL-SQL Function en Oracle */

Select

To_char(emp.sueldo_emp,’ 999G999G999G999G999’,

’NLS_NUMERIC_CHARACTERS = ”,.”’) sueldo,

To_char(emp.dias,’ 999G999G999G999D99’,’ NLS_NUMERIC_CHARACTERS = ”,.”’) dias

From t_empleado emp

Where emp.rut = pin_rut;

Los caracteres de la PL-SQL Function en Oracle TO_CHAR corresponden a: 9= representa un número, G= representa el carácter separador de miles,
D= representa el punto decimal, NLS_NUMERIC_CHARACTERS= define los caracteres separadores de miles y decimales. El resultado de esta query
en tus PL-SQL Packages en Oracle es el siguiente:

Sueldo Días

3.450.322 29,50

Te propongo que pruebes de inmediato este ejemplo en tu Base de Datos con tus propios PL-SQL Procedures en Oracle y PL-SQL Function en Oracle,
para que comiences a ejercitar la mano y aprendas a dominar esta nueva técnica en tus PL-SQL Packages en Oracle.

Estoy muy interesado en conocer tu opinión y/o comentario sobre este artículo, también cuéntame sobre qué es lo que quieres saber de PL-SQL
Function en Oracle y/o dime cuál es tu principal frustración a la hora de trabajar con PL-SQL Function en Oracle. Estaré muy atento respondiendo tus
preguntas y/o comentarios, gracias.

Saludos

Roberto Vicencio – Escritor del Reporte:

“Cómo Construir un SELECT Eficiente en ORACLE en Solo 7 Pasos”

Guía Recomendada: 7 Pasos para Crear Consultas Eficientes en PL-SQL

Esta web usa cookies

Este sitio usa Cookies propias y de terceros para mejorar su experiencia de navegación y mejorar nuestros servicios según sus hábitos de navegación. Si continúa navegando,

consideramos que acepta su uso, pero puede optar por no participar si lo desea. Aceptar Leer mas...
192.185.229.173
Comparte

Mira que dicen las personas que ya han descargado la Guía:

 Buen día Roberto Vicencio, realmente


el material construido es una muy
buena compilación de conocimiento.
Para principiantes en Select será
primordial dominar estas páginas.
Muchas Gracias por compartir. Estoy
pendiente del Blog, gracias. 

Alejandro Iris   
Pereira, Colombia.
Clic Aquí Para Ver Más Testimonios ►

Function en Oracle,Packages en Oracle,PL-SQL Function,PL-SQL Package,PL-SQL Procedure,Procedures en Oracle

Deja Tu Comentario
Nombre*: Email*: (no quedará publicado) Tu Página es?... Tu

Comentario*: Enviar Comentario

ju:

hola, tengo una cocnsulta. Tego una variable tipo number la cual , al querer mostrarla por el dbms.. no me muestra el resultado cuando como
corersponde cuando son decimales. por ejemplo me muestra un 1,2 o un 15,3 pero cuando es 0,5 no me muestra el 0. ya le puse una mascara y no
funciona. necesito estos datos para un reporte, espero y me pudas contestar . saludos!

admin: Esta web usa cookies

Hola Este sitio usa Cookies propias y de terceros para mejorar su experiencia de navegación y mejorar nuestros servicios según sus hábitos de navegación. Si continúa navegando,
Judycleo, gracias por comunicarte, para mostrar el 0. con dbms_output debes darle formato con la función to_char de esta forma:
consideramos que acepta su uso, pero puede optar por no participar si lo desea. Aceptar Leer mas...
192.185.229.173
lin_valor:= 0.5;
dbms_output.put_line(to_char(lin_valor,’0D99′));
Resultado: 0,50

Prueba este ejemplo, te funcionará.

Saludos
Comparte
Roberto Vicencio – Para Tu Éxito con Oracle.

PD: Ya recibiste mi reporte gratuito, si aún no lo has hecho puedes obtenerlo aquí:
https://dominatuspackagesenoracle.com

Blanca:

Me ha resultado de gran utilidad ya que además de estar muy bien explicado los ejemplos que incorporan no deja la menor duda.

Muchas gracias por el esfuerzo que realizas para darnos soporte a los demás.

admin:

Hola Blanca, gracias por comunicarte y por tu excelente comentario, este tipo de comentarios son lo que me animan a seguir escribiendo buenos
artículos, te invito a seguir visitando mi blog, gracias.

Saludos
Roberto Vicencio – Para Tu Éxito con Oracle.
https://dominatuspackagesenoracle.com/blog/

PASCUALINO ZERILLO:

Saludos. Roberto, existe alguna manera de ejecutar un reporte desde un Package de Base de datos y enviarlo adjunto en un email. Gracias…Excelente
tus artículos.

admin:

Hola Pascualino, gracias por comunicarte y por tu comentario, una vez que generes el reporte desde un procedimiento almacenado puedes enviar el
reporte por email utilizando la librería UTL_SMTP de Oracle, el código que se usa es un poco extenso para pegarlo aquí pero lo puedes buscar en la
red y encontraras varios ejemplos que puedes usar, solo debes programar un poco en donde se atacha el archivo, gracias.

PD: Si te gusta el contenido del blog comparte este enlace https://dominatuspackagesenoracle.com/blog/ con tus amigos o personas que también les
pueda interesar este contenido.

Saludos
Roberto Vicencio – Para Tu Éxito con Oracle.
https://dominatuspackagesenoracle.com/blog/

Gibran:

Hola Roberto, mira solo tenia una duda, como puedo presentar solo la hora de un date con formato hh:mi:ss pero adicionalmente quiero que me
aparezca con pm o am segun el caso. Saludos y gracias de antemano por tomarte tiempo de leer mi comentario.

Roberto Vicencio:

Hola Gibran, gracias por comunicarte, para hacer eso solo debes agregar al formato las letras a.m. o p.m., es decir, to_char(sysdate,’hh:mi:ss a.m.’) y
de forma automática se mostrará si la hora es AM o PM, por ejemplo 09:35:59 AM o 15:49:21 PM.

PD: Si te ha gustado el blog te invito a compartir el enlace https://dominatuspackagesenoracle.com/blog/ con tus amigos o personas que también les
pueda interesar este contenido, gracias.

Saludos
Roberto Vicencio – Para Tu Éxito con Oracle.

Claudio Rigollet:

gracias amigo encontre justo lo que necesitaba, es una tontera pero tenia las , en vez de los . y tan sencillo como cambiarlos por G jejeje gracias y
saludos.

TO_CHAR(SUM(SALARY),’$999,999,999′) = $4,400
TO_CHAR(SUM(SALARY),’$999G999G999′) = $4.400

Roberto Vicencio:
Esta web usa cookies
Hola Claudio, gracias por comunicarte, me da mucho gusto que este artículo te sea de utilidad, ya pudiste ver mi libro reporte sobre ‘Cómo Crear un
SELECT Eficiente
Este sitio en ORACLE
usa Cookies propias y deenterceros
Solo 7para
Pasos’, si su
mejorar aun no lo tienes
experiencia en tus manos
de navegación puedes
y mejorar obtenerlo
nuestros serviciosgratis
según desde aquí:
sus hábitos de navegación. Si continúa navegando,
https://dominatuspackagesenoracle.com/
consideramos que acepta su uso, pero puede optar por no participar si lo desea. Aceptar Leer mas...
192.185.229.173
Saludos
Roberto Vicencio – Para Tu Éxito con Oracle.

Responde a esta pregunta…

Comparte

Nube de Sub-Temas

BETWEEN Campos Virtuales CASE CASE en ORACLE Ciclo FOR Cláusula EXCEPTION Cláusula GROUP BY Cláusula IN Cláusula UNION COUNT DECODE
DIRECTORY EXISTS Funciones Function en Oracle INSTR LIKE MAX MINUS Packages en Oracle Parámetro por Defecto
PL-SQL PL-SQL Function PL-SQL Package PL-SQL Procedure Procedimientos
Procedures en Oracle Querys en Oracle Restar Fechas RETURN ROWID ROWNUM SELECT SELECT en ORACLE Sentencia IF
SEQUENCE SQL Subquerys SUM SYSDATE Tabla DUAL TO_CHAR Variables BOOLEAN VIEW WHERE

Temas agrupados
Function en Oracle (33)
Noticias PL/SQL (11)
Packages en Oracle (42)
PL-SQL Function (34)
PL-SQL Package (43)
PL-SQL Procedure (44)
Procedures en Oracle (43)
Videos PL-SQL (1)

Quienes Vieron la Guía Dicen

Muy bueno tu PDF

Hola que tal roberto


muy bueno tu pdf
que me
descargue..!! tal
vez me puedes
recomendar algún lugar o un libro
sobre triggers, muy buen aporte ..!!
  
Andres Peralta

Ver más testimonios ►

INICIO · VIDEOS · NOTICIAS · PRODUCTOS · QUIEN SOY! · CONTÁCTENOS

Volver Arriba ▲

©Copyright 2011 - 2019 | DominaTusPackagesEnOracle.com


Esta web usa cookies
| Todos los Derechos Reservados.
Política de Privacidad | Términos y Condiciones de Uso
Este sitio usa Cookies propias y de terceros para mejorar su experiencia de navegación y mejorar nuestros servicios según sus hábitos de navegación. Si continúa navegando,

consideramos que acepta su uso, pero puede optar por no participar si lo desea. Aceptar Leer mas...
192.185.229.173
Powered By Mow - Wordpress Popup Plugin

Comparte

Esta web usa cookies

Este sitio usa Cookies propias y de terceros para mejorar su experiencia de navegación y mejorar nuestros servicios según sus hábitos de navegación. Si continúa navegando,

consideramos que acepta su uso, pero puede optar por no participar si lo desea. Aceptar Leer mas...
192.185.229.173

Anda mungkin juga menyukai