2. ObjetivosObjetivos
Al completar esta lección podrá realizar lo siguiente:
• Listar las capacidades de las sentencias SQL
SELECT
• Ejecutar una sentencia básica SELECT
•
1-2
• Diferenciar entre sentencias SQL y comandos de
iSQL*Plus
3. Capacidades de sentencias SQLCapacidades de sentencias SQL SELECTSELECT
SelecciónProyección
1-3
Tabla 1 Tabla 2
Tabla 1Tabla 1
Unión
4. Sentencia BásicaSentencia Básica SELECTSELECT
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;
• SELECT identifica Que columnas
1-4
• SELECT identifica Que columnas
• FROM identifica Cual tabla
7. Escribiendo Sentencias SQLEscribiendo Sentencias SQL
• Las sentencias SQL no son “case sensitive”.
• Las sentencias SQL pueden ser escritas en una o más
líneas.
• Las palabras claves no pueden ser abreviadas o tener
fracturas entre líneas.
• Las cláusulas son usualmente escritas en líneas
separadas.
1-7
separadas.
• Las sangrías se utilizan para incrementar la legibilidad.
• En iSQL*Plus, las sentencias SQL pueden opcionalmente
terminar con punto y coma (;). El punto y coma es
obligatorio cuando ejecutas múltiples sentencias SQL.
• En SQL*Plus, el punto y coma es obligatorio la final de
cada sentencia SQL.
8. Encabezado de Columnas por defectoEncabezado de Columnas por defecto
• iSQL*Plus:
– Justificación de encabezado por defecto: Centro
– Despliegue de encabezado por defecto:
Mayúsculas
• SQL*Plus:
1-8
• SQL*Plus:
– Encabezados de columnas de caracteres y fechas
son justificados a la izquierda
– Encabezados de columnas tipo numérico son
justificadas a la derecha
– Despliegue de encabezado de columnas:
Mayúsculas
11. Precedencia de OperadoresPrecedencia de Operadores
1-11
• Multiplicación y división tienen prioridad sobre suma y
resta.
• Los operadores con la misma prioridad son evaluados
de izquierda a derecha.
• Los paréntesis son usados para forzar prioridad y
clarificar las sentencias.
14. Definiendo Valores NulosDefiniendo Valores Nulos
• Un nulo es un valor que es inasequible, no
asignado, desconocido, o inaplicable .
• Un nulo no es lo mismo que cero o espacio en
blanco.
SELECT last_name, job_id, salary, commission_pct
FROM employees;
1-14
FROM employees;
…
…
15. SELECT last_name, 12*salary*commission_pct
FROM employees;
Valores Nulos enValores Nulos en
Expresiones AritméticasExpresiones Aritméticas
Las expresiones aritméticas que contienen un valor
nulo se evalúan como nulas.
1-15
…
…
16. Definiendo Alias de ColumnasDefiniendo Alias de Columnas
Un alias de columna:
• Renombra el encabezado de columna
• Es útil con cálculos
• Sigue inmediatamente el nombre de la columna -
1-16
• Sigue inmediatamente el nombre de la columna -
puede también haber el opcional AS palabra clave
entre el nombre de la columna y alias
• Requiere comillas dobles si contiene espacios o
caracteres especiales o es “case sensitive”
17. Usando Alias de columnasUsando Alias de columnas
SELECT last_name AS name, commission_pct comm
FROM employees;
…
1-17
SELECT last_name "Name", salary*12 "Annual Salary"
FROM employees;
…
18. Operador de ConcatenaciónOperador de Concatenación
Un operador de concatenación:
• Concatena columnas o secuencias de carácter a
otras columnas
• Es representado por dos barras verticales (||)
1-18
• Crea una columna resultante que es la expresión
en carácteres
19. Usando el operador de ConcatenaciónUsando el operador de Concatenación
SELECT last_name||job_id AS "Employees"
FROM employees;
1-19
…
20. Cadenas de caracteres LiteralesCadenas de caracteres Literales
• Una literal es un carácter, un número o una fecha
que es incluida en la lista del SELECT.
• Literales de valores de fecha y carácter deben
estar encerradas con comillas simples.
• Cada cadena de caracteres es desplegada una vez
1-20
• Cada cadena de caracteres es desplegada una vez
para cada registro retornado.
21. Usando literales de cadenas de carácterUsando literales de cadenas de carácter
SELECT last_name ||' is a '||job_id
AS "Employee Details"
FROM employees;
1-21
…
22. Registros DuplicadosRegistros Duplicados
El despliegue por defecto de búsquedas son todosEl despliegue por defecto de búsquedas son todos
los registros, incluyendo los registros duplicadoslos registros, incluyendo los registros duplicados.
SELECT department_id
FROM employees;
1-22
…
23. Eliminando Registros DuplicadosEliminando Registros Duplicados
Eliminar registros duplicados usando la palabra clave
DISTINCT en la cláusula SELECT.
SELECT DISTINCT department_id
FROM employees;
1-23
24. Interacción entre SQL yInteracción entre SQL y iiSQL*PlusSQL*Plus
Sentencias SQL
Servidor
OracleInternetInternet
BrowserBrowser
iiSQL*PlusSQL*Plus
1-24
Resultados de BúsquedasResultados de BúsquedasComandos
iSQL*Plus
Cliente
Reportes formateados
25. Sentencias SQL ContraSentencias SQL Contra
Comandos deComandos de iiSQL*PlusSQL*Plus
SQL
• Un lenguaje
• Estándar ANSI
• No pueden ser
abreviadas las palabras
clave
iiSQL*PlusSQL*Plus
• Un entorno
• El propietario es Oracle
• Las palabras claves
pueden ser abreviadas
• Los comandos no
1-25
SentenciasSentencias
SQLSQL
• Las declaraciones
manipulan datos y
definiciones de tabla en
la base de datos
• Los comandos no
permiten la manipulación
de valores en la base de
datos
• Funciona en un browser
• Centralmente cargado, no
tiene que ser puesto en
ejecución en cada
máquina
ComandosComandos
iiSQL*PlusSQL*Plus
26. DescripciónDescripción dede iiSQL*PlusSQL*Plus
Después de conectarse a iSQL*Plus, se puede:
• Describir la estructura de la tabla
• Editar sentencias SQL
• Ejecutar SQL desde iSQL*Plus
1-26
• Ejecutar SQL desde iSQL*Plus
• Guardar sentencias SQL a archivos y añadir las
declaraciones de sentencias SQL a los archivos
• Ejecutar sentencias almacenadas en archivos
• Cargar comandos desde archivos de texto en la
ventana de edición de iSQL*Plus
29. Desplegando Estructura de TablasDesplegando Estructura de Tablas
Usar el comando iSQL*Plus DESCRIBE para desplegar
la estructura de una tabla.
DESC[RIBE] tablename
1-29
32. Interactuando con ScriptsInteractuando con Scripts
1
D:tempemp_sql.htm
SELECT last_name, hire_date, salary
1-32
SELECT last_name, hire_date, salary
FROM employees;
3
33. Interactuando con ScriptsInteractuando con Scripts
DESCRIBE employees
SELECT first_name, last_name, job_id 1
1-33
SELECT first_name, last_name, job_id
FROM employees;
1
23
34. ResumenResumen
En esta lección se habrá aprendido acerca de:
• Escribir una sentencia SELECT que:
– Retorne todos los registros y columnas de una tabla
– Retorne columnas especificas de una tabla
– Uso de aliases de columnas para proporcionar
1-34
SELECT *|{[DISTINCT] column|expression [alias],...}
FROM table;
– Uso de aliases de columnas para proporcionar
encabezados descriptivos de columnas
• Usar en entorno de iSQL*Plus para escribir, guardar, y
ejecutar sentencias SQL y comandos de iSQL*Plus.
35. Practica 1 Visión GeneralPractica 1 Visión General
Esta practica cubre los siguientes temas:
• Seleccionar todos los datos de diferentes tablas
• Describir la estructura de tablas
• Ejecución de calculos aritmeticos y especificación
1-35
• Ejecución de calculos aritmeticos y especificación
de nombres de columnas
• Uso de iSQL*Plus