SQL-Less3.pdfadddddddddddddddddddddddddd

joseenriquecorderora 0 views 53 slides Oct 02, 2025
Slide 1
Slide 1 of 53
Slide 1
1
Slide 2
2
Slide 3
3
Slide 4
4
Slide 5
5
Slide 6
6
Slide 7
7
Slide 8
8
Slide 9
9
Slide 10
10
Slide 11
11
Slide 12
12
Slide 13
13
Slide 14
14
Slide 15
15
Slide 16
16
Slide 17
17
Slide 18
18
Slide 19
19
Slide 20
20
Slide 21
21
Slide 22
22
Slide 23
23
Slide 24
24
Slide 25
25
Slide 26
26
Slide 27
27
Slide 28
28
Slide 29
29
Slide 30
30
Slide 31
31
Slide 32
32
Slide 33
33
Slide 34
34
Slide 35
35
Slide 36
36
Slide 37
37
Slide 38
38
Slide 39
39
Slide 40
40
Slide 41
41
Slide 42
42
Slide 43
43
Slide 44
44
Slide 45
45
Slide 46
46
Slide 47
47
Slide 48
48
Slide 49
49
Slide 50
50
Slide 51
51
Slide 52
52
Slide 53
53

About This Presentation

leccion para aprender sql


Slide Content

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 1
Funciones de una Sola Fila

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 2
Objetivo
Después de completar esta lección, usted debería ser capaz
de hacer lo siguiente:
•Describir varios tipos de funciones disponibles en SQL
•Utilizar funciones de carácter, número y fecha en
declaraciones SELECT
•Describir el uso de las funciones de conversión

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 3
Funciones SQL
Función
Entrada
arg 1
arg 2
arg n
Funciónque
realizala acción
Salida
Valor del resultado

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 4
Dos Tipos de Funciones SQL
Funciones
Funciones de
una sola fila
Funciones de
múltiples filas

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 5
Funciones de una Sola Fila
FuncionesdeunaSolaFila:
•Manipularloselementosdedatos
•Aceptarargumentosydevolverunvalor
•Actuarencadafiladevuelta
•Regresarunresultadoporfila
•Puedemodificareltipodedatos
•Puedeserencajable
•Aceptarargumentosloscualespuedenserunacolumnao
unaexpresión
function_name[(arg1, arg2,...)]

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 6
Funciones de una Sola Fila
Conversión
Caracter
Número
Fecha
General
Funciones
de una Sola
Fila

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 7
Funciones de Caracteres
Funcionesde
Caracteres
LOWER
UPPER
INITCAP
CONCAT
SUBSTR
LENGTH
INSTR
LPAD | RPAD
TRIM
REPLACE
Funcionesde la Cajade
Manipulación
Funcionesde Manipulación
de Caracteres

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 8
Funciones de Manipulación de la Caja
•Estasfuncionesconviertencasodecadenasde
caracteres
Función Resultado
LOWER('SQL Course')
UPPER('SQL Course')
INITCAP('SQL Course')
sql course
SQL COURSE
Sql Course

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 9
Uso de las Funciones de Manipulación de la
Caja
•Muestraelnúmerodeempleado,nombreynúmerode
departamentodelosempleadosdeHiggins:
SELECT employee_id, last_name, department_id
FROM employees
WHERE last_name = 'higgins';
no rows selected
SELECT employee_id, last_name, department_id
FROM employees
WHERE LOWER(last_name) = 'higgins';

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 10
Funciones de Manipulación de Caracteres
•Estasfuncionesmanipulanlascadenasdecaracteres:
CONCAT('Hello', 'World')
SUBSTR('HelloWorld',1,5)
LENGTH('HelloWorld')
INSTR('HelloWorld', 'W')
LPAD(salary,10,'*')
RPAD(salary, 10, '*')
TRIM('H' FROM 'HelloWorld')
HelloWorld
Hello
10
6
*****24000
24000*****
elloWorld
Función Resultado

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 11
Uso de las Funciones de Manipulación de
Caracteres
SELECT employee_id, CONCAT(first_name, last_name) NAME,
job_id, LENGTH (last_name),
INSTR(last_name, 'a') "Contains 'a'?"
FROM employees
WHERE SUBSTR(job_id, 4) = 'REP';
1
2
31 2
3

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 12
Funciones de Números
ROUND:Redondeaelvalorespecificadoa
decimal
ROUND(45.926,2) 45.93
TRUNC:Truncaelvalorespecificadoadecimal
TRUNC(45.926,2) 45.92
MOD:Devuelveelresiduodeladivisión
MOD(1600,300) 100

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 13
Uso de la Función ROUND
SELECT ROUND(45.923,2), ROUND(45.923,0),
ROUND(45.923,-1)
FROM DUAL;
1 2
3
31 2
DUALesunatablaficticiaquepuedeutilizarparaverlos
resultadosdelasfuncionesycálculos

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 14
Uso de la Función TRUNC
SELECT TRUNC(45.923,2), TRUNC(45.923),
TRUNC(45.923,-2)
FROM DUAL;
31 2
1 2
3

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 15
Uso de la Función MOD
•Calculaladiferenciadelsueldodespuésdequees
divididopor5000paratodoslosempleadoscuyo
puestodetrabajoesrepresentantedeventas.
SELECT last_name, salary, MOD(salary, 5000)
FROM employees
WHERE job_id = 'SA_REP';

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 16
Trabajando con Fechas
•LabasededatosdeORACLEalmacenafechasenun
formatonuméricointerno:siglo,año,mes,día,horas,
minutos,segundos,
•ElformatodefechapordefectoesDD-MON-RR.
•Lepermitealmacenarfechasdelsiglo21enelsiglo20,
especificandosólolosdosúltimosdígitosdelaño.
•Lepermitealmacenarfechasdelsiglo20enelsiglo21
delamismamanera.
SELECT last_name, hire_date
FROM employees
WHERE last_name like 'G%';

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 17
Trabajando con Fechas
SYSDATEesunafunciónqueregresa:
•Fecha
•Tiempo

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 18
Aritmética con Fechas
•Sumarorestarunnúmeroapartirdeunafechapara
unvalordefecharesultante.
•Restardosfechasparaencontrarelnúmerodedías
entreesasfechas.
•Añadirhorasaunafechadividiendoelnúmerode
horaspor24.

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 19
Uso de Operadores Aritméticos con Fechas
SELECT last_name, (SYSDATE -hire_date)/7 AS WEEKS
FROM employees
WHERE department_id = 90;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 20
Funciones de Fecha
Númerode mesesentre dos
fechas
MONTHS_BETWEEN
ADD_MONTHS
NEXT_DAY
LAST_DAY
ROUND
TRUNC
Añadiral calendariomeses
hastala fecha
Díasiguientede la fecha
especificada
Últimodíadel mes
Fecharedondeada
Fechatruncada
Función Descripción

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 21
Utilizando Funciones de Fecha
•MONTHS_BETWEEN ('01-SEP-95','11-JAN-94')
•ADD_MONTHS ('11-JAN-94',6)
•NEXT_DAY ('01-SEP-95','FRIDAY')
•LAST_DAY('01-FEB-95')
19.6774194
'11-JUL-94'
'08-SEP-95'
'28-FEB-95'

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 22
Utilizando Funciones de Fecha
•ROUND(SYSDATE,'MONTH') 01 -AUG-95
•ROUND(SYSDATE ,'YEAR') 01 -JAN-96
•TRUNC(SYSDATE ,'MONTH') 01 -JUL-95
•TRUNC(SYSDATE ,'YEAR') 01 -JAN-95
AsumirqueSYSDATE = '25-JUL-95':

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 23
Práctica 3, Primera Parte: Información
General
Estaprácticaabarcalossiguientestemas:
•Escribirunaconsultaquemuestralafechaactual
•Creacióndeconsultasquerequierenelusonumérico,
caracteresyfuncionesdefecha
•Realizacióndecálculosdeañosymesesdeservicioparaun
empleado

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 24
Funciones de Conversión
Conversiónde Tipo
de DatosImplícita
Conversiónde Tipo
de DatosExplícita
Conversiónde Tipo
de Datos

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 25
Conversión de Tipos de Datos Implícita
Enlasasignaciones,elServidorOraclepuedeconvertir
automáticamentelosiguiente:
VARCHAR2 or CHAR
From To
VARCHAR2 or CHAR
NUMBER
DATE
NUMBER
DATE
VARCHAR2
VARCHAR2

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 26
Conversión de Tipos de Datos Implícita
Paralaevaluacióndeexpresiones,elServidorOracle
puedeconvertirautomáticamentelosiguiente:
VARCHAR2 or CHAR
From To
VARCHAR2 or CHAR
NUMBER
DATE

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 27
Conversión de Tipos de Datos Explícita
NUMBER CHARACTER
TO_CHAR
TO_NUMBER
DATE
TO_CHAR
TO_DATE

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 28
Usode la FunciónTO_CHARcon Fechas
Elmodelodeformato:
•Debeirentrecomillassimplesyessensiblea
mayúsculas
•Puedeincluircualquierelementodeformatodefecha
válido
•Tieneunelementofmparaeliminarespaciosenblanco
acolchadososuprimircerosalaizquierda
•Seseparadeelvalordefechaporunacoma
TO_CHAR(date, 'format_model')

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 29
Elementos del Formato Modelo Fecha
YYYY
YEAR
MM
MONTH
DY
DAY
Añocompletoen números
Añoexplicado
Valor de dos digitosparael mes
Tresletrasde la abreviaturadel
díade la semana
Nombrecompletodel día
Nombrecompletodel mes
MON
Tresletrasde la abreviaturadel
mes
DD Díanuméricodel mes

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 30
•Lasunidadesdelformatotiemposonenproporciónal
tiempodelafecha
Elementos del Formato Modelo Fecha
HH24:MI:SS AM 15:45:32 PM
•Añadircadenasdecaracteresencerrándolosentrecomillas
dobles
DD "of" MONTH 12 of OCTOBER
•Número sufijos deletrear números.
ddspth fourteenth

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 31
Usode la FunciónTO_CHARcon Fechas
SELECT last_name,
TO_CHAR(hire_date, 'fmDD Month YYYY')
AS HIREDATE
FROM employees;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 32
Usode la FunciónTO_CHARcon Números
TO_CHAR(number, 'format_model')
•Estossonalgunosdeloselementosdeformatoquepuedeutilizar
conlafunciónTO_CHARparamostrarunvalornuméricocomoun
caracter:
9
0
$
L
.
,
Representaun número
Obligaa queun cero sea desplegado
Colocaun signode dólarflotante
Utilizael símbolode la monedalocal
Imprimeun puntodecimal
Imprimeun indicadorde mil

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 33
Usode la FunciónTO_CHARcon Números
SELECT TO_CHAR(salary, '$99,999.00') SALARY
FROM employees
WHERE last_name = 'Ernst';

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 34
Usode lasFuncionesTO_NUMBER yTO_DATE
•Convertirunacadenadecaracteresenunformatodenúmero
usandolafunciónTO_NUMBER
TO_NUMBER(char[, 'format_model'])
•Convertirunacadenadecaracteresenunformatodefecha
usandolafunciónTO_DATE
TO_DATE(char[, 'format_model'])
•EstasfuncionestienenunmodificadorFX.Estemodificador
especificalacoincidenciaexactadelargumentodecarácteryel
modelodelformatodefechadeunafunciónTO_DATE

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 35
Formatode FechaRR
Current Year
1995
1995
2001
2001
Specified Date
27-OCT-95
27-OCT-17
27-OCT-17
27-OCT-95
RR Format
1995
2017
2017
1995
YY Format
1995
1917
2017
2095
0–49
0–49 50–99
50–99
La fecha de regreso
es en el siglo actual.
Lafecha de regreso
es en el siglo
posterior al actual.
The return date is in
the century before
the current one
The return date is in
the current century
If the specified two-digit year is:
Si dos
dígitos del
año en
curso son:

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 36
Ejemplode Formatode FechaRR
SELECT last_name, TO_CHAR(hire_date, 'DD -Mon-YYYY')
FROM employees
WHERE hire_date < TO_DATE('01 -Jan-90', 'DD-Mon-RR');
•Paraencontraralosempleadoscontratadosantesde
1990,utiliceelformatoRR,queproducelosmismos
resultadossielcomandoseejecutaen1999oahora:

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 37
Anidamientode Funciones
•Funcionesdeunasolafilasepuedenanidara
cualquiernivel.
•Funcionesanidadasseevalúandesdeelnivelmás
profundohastaelnivelmenosprofundo.
F3(F2(F1(col,arg1),arg2),arg3)
Step 1 = Result 1
Step 2 = Result 2
Step 3 = Result 3

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 38
Anidamientode Funciones
SELECT last_name,
NVL(TO_CHAR(manager_id), 'No Manager')
FROM employees
WHERE manager_id IS NULL;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 39
FuncionesGenerales
Estas funciones trabajan con cualquier tipo de datos y se
relacionan con el uso de valores nulos.
•NVL (expr1, expr2)
•NVL2 (expr1, expr2, expr3)
•NULLIF (expr1, expr2)
•COALESCE (expr1, expr2, ..., exprn)

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 40
FunciónNVL
Convierte un valor nulo a un valor real.
•Los tipos de datos que se pueden utilizar son la fecha,
carácter, y el número.
•Los tipos de datos deben coincidir:
NVL(commission_pct,0)
NVL(hire_date,'01-JAN-97')
NVL(job_id,'NoJob Yet')

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 41
Usode la FunciónNVL
SELECT last_name, salary, NVL(commission_pct, 0),
(salary*12) + (salary*12*NVL(commission_pct, 0)) AN_SAL
FROM employees;

1
1
2
2

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 42
Usode la FunciónNVL2
SELECT last_name, salary, commission_pct,
NVL2(commission_pct,
'SAL+COMM', 'SAL') income
FROM employees WHERE department_idIN (50, 80);
1
1
2
2

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 43
Usode la FunciónNULLIF
SELECT first_name, LENGTH(first_name) "expr1",
last_name, LENGTH(last_name) "expr2",
NULLIF(LENGTH(first_name), LENGTH(last_name)) result
FROM employees;

1
2
3
1 2 3

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 44
Usode la FunciónCOALESCE
•LaventajadelafunciónCOALESCEsobrelafunciónNVL
esquelafunciónCOALESCEpuedetomarmúltiples
valoresalternativos
•Silaprimeraexpresiónesnula,devuelveesaexpresión,
delocontrariohaceunCOALESCEdelasexpresiones
restantes

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 45
Usode la FunciónCOALESCE
SELECT last_name,
COALESCE(commission_pct, salary, 10) comm
FROM employees
ORDER BY commission_pct;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 46
ExpresionesCondicionales
•ProporcionaelusodelalógicaIF-THEN-ELSEdentrode
unadeclaraciónSQL
•Usodedosmétodos:
–ExpresiónCASE
–FunciónDECODE

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 47
La ExpresiónCASE
•Facilitalasconsultascondicionaleshaciendoeltrabajode
unainstrucciónIF-THEN-ELSE
CASE exprWHEN comparison_expr1 THEN return_expr1
[WHENcomparison_expr2 THENreturn_expr2
WHENcomparison_exprn THENreturn_exprn
ELSE else_expr]
END

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 48
Usode la ExpresiónCASE
•Facilitalasconsultascondicionaleshaciendoeltrabajode
unainstrucciónIF-THEN-ELSE
SELECT last_name, job_id, salary,
CASE job_id WHEN 'IT_PROG' THEN 1.10*salary
WHEN 'ST_CLERK' THEN 1.15*salary
WHEN 'SA_REP' THEN 1.20*salary
ELSE salary END "REVISED_SALARY"
FROM employees;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 49
La FunciónDECODE
•Facilitalasconsultascondicionaleshaciendoeltrabajode
CASEodeunainstrucciónIF-THEN-ELSE
DECODE(col|expression, search1, result1
[, search2, result2,..., ]
[, default])

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 50
Usode la FunciónDECODE
SELECT last_name, job_id, salary,
DECODE(job_id, 'IT_PROG', 1.10*salary,
'ST_CLERK', 1.15*salary,
'SA_REP', 1.20*salary,
salary)
REVISED_SALARY
FROM employees;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 51
Usandola FunciónDECODE
•Muestralatasadeimpuestoaplicableacadaempleado
eneldepartamento80
SELECT last_name, salary,
DECODE (TRUNC(salary/2000, 0),
0, 0.00,
1, 0.09,
2, 0.20,
3, 0.30,
4, 0.40,
5, 0.42,
6, 0.44,
0.45) TAX_RATE
FROM employees
WHERE department_id = 80;

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 52
Resumen
Enestalección,debehaberaprendidoa:
•Realizarcálculosendatosusandofunciones
•Modificardatosindividualesutilizandolasfunciones
•Manipularlasalidaparalosgruposdefilasutilizando
funciones
•Modificarformatosdefechaparalavisualizaciónusando
funciones
•Convertirtiposdedatosdecolumnautilizandofunciones
•UtilizarfuncionesNVL
•UsodelalógicaIF-THEN-ELSE

04/08/2025 GSFELCO Grupo Tecnológico 2024. DR 53
Práctica 3, Segunda Parte: Información
General
Estaprácticaabarcalossiguientestemas:
•Creacióndeconsultasquerequierenelusonumérico,
caracteresyfuncionesdefecha
•Usodeconcatenaciónconfunciones
•Escribiendoconsultasentremayúsculasyminúsculaspara
ponerapruebalautilidaddelasfuncionesdecarácter
•Realizacióndecálculosdeañosymesesdeservicioparaun
empleado
•Ladeterminacióndelafechaderevisiónparaunempleado
Tags