Data">
ME - 1 Consulta de Datos
ME - 1 Consulta de Datos
ME - 1 Consulta de Datos
UNIDAD Nº I
Construyendo Consultas Simples
www.iplacex.cl
SEMANA 1 Desarrollo
En este módulo vamos a iniciar los primeros pasos de entendimiento a mi base de datos
y cuál es la forma que me puedo comunicar con él.
Esa misma acción es lo que hace un administrador de base de datos o también conocido
como DBA, quien tiene como rol principal cuidar la integridad y las buenas prácticas con
respecto a la base de datos.
Pero recuerda que cada usuario puede trabajar con la información que almacena en
dichas carpetas.
Como tenemos claro su importante rol en la base de datos, recuerda que cada vez que
tengamos problemas con la base de datos de una empresa en la que estamos
trabajando, debemos contactar con él para que nos pueda ayudar.
www.iplacex.cl2
Para realizar una búsqueda, debes hacer click en el ícono de lupa del escritorio de tu
computador (en la parte inferior izquierda de la imagen) e ingresar el nombre de lo que
deseas buscar.
Observa que el computador filtra entre todos sus archivos, y encuentra lo que estás
buscando. Recuerda que cuando quieres hacer una búsqueda, debe existir un lenguaje
en común con el que puedas comunicarte con el computador. En este caso, usamos el
lenguaje español.
Lenguaje específico
Mi Base de Datos tiene un lenguaje específico para que podamos interactuar con él.
www.iplacex.cl3
SQL
Todo este concepto nace en una biblioteca antigua donde ya existían millones de
registros almacenados en libros. Esos libros contaban con datos sobre algunas cosechas
y censos de la población.
Por estos motivos se vio la necesidad de almacenar gran cantidad de información y con
la aparición de los primeros computadores se vio la necesidad crear una base de datos.
Su desventaja
www.iplacex.cl4
Larry Ellison: Desarrolló el Relational Software System que hoy en día se conoce como
Oracle Corporation, gracias a esta compañía nació el Sistema de Gestión de Base de
Datos Relacionales (SGBDR o RDBMS).
Cabe destacar que Oracle es uno de los Sistema de Gestión de Base de Datos más
completos que existen, aunque son de uso corporativo.
Edgar Frank Codd: En los años 70’s se definió el modelo relacional en donde su creador
Edgar Frank Codd publicó una serie de reglas para los sistemas de datos relacionales.
www.iplacex.cl5
En los años 80’ SQL empezó a ser estándar en
otros Sistema de Gestión de Base de Datos, ya que
su programación era sencilla.
Hoy en día, los Sistemas de Gestión de Bases de Datos Relacionales han sido liderados
por grandes, como IBM, Oracle y Microsoft.
www.iplacex.cl6
Conociendo mi entorno de trabajo
Proceso de Instalación
1. Abre tu navegador:
www.iplacex.cl7
2. Ingresa a la página:
https://www.oracle.com/database/technologies/xe-prior-releases.html
www.iplacex.cl8
4. Acepta los términos y condiciones:
www.iplacex.cl9
6. Al iniciar la sesión, comenzará la descarga:
www.iplacex.cl10
8. Abre el instalador haciendo click en setup.exe:
www.iplacex.cl11
10. Debes ingresar una contraseña. Debes escoger una password que te sea fácil
recordar, ya que se requerirá para configurar la cuenta administrador (Usuario
SYSTEM) más adelante. Luego continúa con los pasos hasta que finalice la
instalación:
www.iplacex.cl12
Conociendo mi entorno de trabajo
www.iplacex.cl13
3. Haz click en donde dice SQL Developer:
www.iplacex.cl14
5. Abre Acepta los términos y condiciones:
www.iplacex.cl15
Esta es la página inicial de Oracle SQL Developer.
1. Lo primero que haremos será crear una conexión. Para eso, haz click en el
símbolo + que se encuentra en la parte superior izquierda:
www.iplacex.cl16
2. Deberás ingresar un nombre para la conexión, usuario y una contraseña:
www.iplacex.cl17
3. En esta asignatura trabajaremos con el usuario HR (Human Resources), un
usuario de prueba de Oracle que posee datos ficticios que nos permitirán practicar
nuestras sentencias SQL. Por defecto, este usuario no posee contraseña y por
ende, su cuenta se encuentra bloqueada.
Así que una vez conectados como SYSTEM, ingresaremos los siguientes
comandos en la Hoja de Trabajo SQL (Hoja blanca central):
User HR alterado.
www.iplacex.cl18
4. Ya que se ha modificado HR, debemos crear una nueva conexión. Haz click en el
símbolo + que se encuentra en la parte superior izquierda:
www.iplacex.cl19
Conceptos:
Estructuras de SQL
DDL: Data Definition Language, que permite crear y definir nuevas bases de datos,
campos, etc.
DCL: Data Control Language, que se encarga de definir los permisos sobre los datos.
DML: Data Manipulation Language, permite generar consultas para ordenar, filtrar y
extraer datos de la base de datos.
Oracle 11G
www.iplacex.cl20
Lenguaje de Manipulación de Datos (DML)
Sintaxis:
Donde:
La nueva fila a insertar debe contener los valores para cada columna de la tabla.
Se deben enumerar o insertar los valores en el orden por defecto de las columnas de la
tabla.
Dado que la nueva fila a insertar en la tabla debe contener los valores para cada columna
se puede omitir listar las columnas en la cláusula INSERT. En este caso, los valores a
insertar deben ser listados de acuerdo al orden que tengan las columnas en la tabla y se
deben asignar todos los valores para las columnas.
www.iplacex.cl21
Ejemplo:
En el ejemplo, ambas sentencias insertan una nueva fila a la tabla DEPARTMENTS con
el departamento 70. En la primera sentencia se indica en la cláusula INSERT cada
columna de la tabla en donde se insertarán los nuevos valores especificados en la
cláusula VALUES. En la segunda sentencia, sólo se indican los valores a insertar por lo
tanto, se insertarán en el orden por defecto que las columnas tengan en la tabla.
www.iplacex.cl22
Actualizando Datos en una Tabla
Sintaxis:
UPDATE tabla
[WHERE condición];
Donde:
• valor: es el valor con el que se actualizará la columna. Puede ser un valor literal,
el nombre de una columna o una subconsulta.
• condición: permite identificar las filas que se desean actualizar. Está compuesta
por nombre de columnas, expresiones, constantes, subconsultas y operadores de
comparación.
Se puede actualizar más de una fila y/o una columna (si es necesario). Si se omite la
cláusula WHERE se actualizan todas las filas.
UPDATE employees
www.iplacex.cl23
Ejemplo: Actualización de todas las filas de la tabla
UPDATE employees
UPDATE employees
En el tercer ejemplo se incluye la cláusula WHERE, esto significa que las filas que
cumplen con la condición serán modificadas. La sentencia actualizará el departamento
con el valor 110 para los empleados con identificación 103 o 104.
www.iplacex.cl24
Eliminando Filas de una Tabla
Utilice DELETE para eliminar filas desde las tablas de la Base de Datos.
Sintaxis:
[WHERE condición];
Donde:
DELETE
FROM EMPLOYEES;
Eliminando todas las filas de la tabla: si se omite la cláusula WHERE se eliminan todas
las filas de la tabla. En el ejemplo, se elimina todas las filas de la tabla EMPLOYEES.
DELETE EMPLOYEES
En el primer ejemplo, se elimina desde tabla DEPARTMENTS la(s) fila(s) cuyo nombre
de departamento sea Finance.
En el segundo ejemplo, se elimina desde tabla EMPLOYEES las filas de los empleados
cuyo salario esté entre los 2000 y 5000.
www.iplacex.cl25
Seleccionando Todas las Columnas
Utilice SELECT permite mostrar los datos de las columnas de las tablas.
Sintaxis:
FROM tabla
[WHERE condición]
[ORDER BY criterio_orden];
Donde:
• DISTINCT: permite que los valores duplicados de las columnas se muestren una
vez.
• FROM tabla : especifica la tabla que contiene las columnas que se desean
mostrar.
• WHERE condición : permite mostrar las filas que cumplan con la condición.
www.iplacex.cl26
Ejemplo:
SELECT *
FROM DEPARTMENTS;
Se pueden seleccionar todas las columnas de datos de una tabla usando un asterisco
(*) a continuación de la palabra SELECT.
Se pueden seleccionar todas las columnas de datos de una tabla usando un asterisco
(*) a continuación de la palabra SELECT.
www.iplacex.cl27
Ejemplo:
FROM DEPARTMENTS;
..… …….
..… ……
Ejemplo:
FROM DEPARTMENTS;
..…. ..…
..…. ..…
En la cláusula SELECT se especifica las columnas que contienen los datos que se
desean mostrar y en el orden que se desea que aparezcan en la salida.
www.iplacex.cl28
Usando Operadores Aritméticos
Para efectuar cálculos con los datos de las tablas se deben usar expresiones aritméticas.
Los operadores aritméticos se pueden usar en cualquier cláusula de una sentencia DML
excepto en la cláusula FROM.
OPERADOR DESCRIPCIÓN
+ Suma
- Resta
* Multiplicación
/ División
www.iplacex.cl29
Ejemplo:
FROM EMPLOYEES;
………… …… …….
………… …… …….
En el ejemplo, la sentencia muestra el apellido paterno, salario y salario más 300 dólares,
de todos los empleados que existen el tabla EMPLOYEES.
www.iplacex.cl30
Ejemplo:
FROM EMPLOYEES;
Ejemplo:
FROM employees;
www.iplacex.cl31
………… …..… ..…….
Para cambiar el orden de prioridad en que se resuelven los operados, se deben utilizar
paréntesis. Por lo tanto en este ejemplo, la sentencia muestra el apellido paterno, salario
y el resultado de multiplicar por 12 el valor obtenido de la suma del salario más 100.
www.iplacex.cl32
Ejemplo:
FROM EMPLOYEES;
……..…… …….
…..……… …….
……..…… …….
………..… …….
www.iplacex.cl33
En el ejemplo, la sentencia muestra el apellido del empleado pero como cabecera en el
informe ya no aparecerá el nombre de la columna que contiene ese dato en la tabla
EMPLOYEES (last_name) sino que aparecerá NOMBRE. Además la sentencia muestra
el porcentaje de comisión que tienen los empleados (columna commission_pct) con el
nombre COMM. Como ve, el uso de la palabra AS es opcional.
Ejemplo:
FROM EMPLOYEES;
www.iplacex.cl34
Usando Operador de Concatenación
Las fechas y los literales de tipo caracteres que se desean concatenar deben ser escritos
entre comillas simples.
Cada cadena de caracteres es una salida por cada fila recuperada de la tabla.
Ejemplo:
FROM EMPLOYEES;
…………………..…………………..……
………………………………..…………..
www.iplacex.cl35
Ejemplo:
SELECT 'El salario mensual del empleado ' || last_name || ' es de $ ' || salary AS
salarios
FROM EMPLOYEES;
…………………..………..……………………………….…
………………………………..……………………….……..
La sentencia del ejemplo muestra el Literal El salario mensual del empleado unido al
apellido de los empleados seguido del literal es de $ unido al salario de cada empleado.
La expresión que se obtiene de la concatenación será mostrada con el nombre de
encabezado (alias) SALARIOS.
www.iplacex.cl36
Valores Duplicados en las Columnas
Por defecto cuando en las consultas se obtienen los valores de las columnas que NO
forman parte de la clave primaria se visualizan todas las filas incluyendo las duplicadas.
Para eliminar las filas duplicadas en el resultado de la sentencia SELECT se debe incluir
la palabra DISTINCT inmediatamente después de la palabra SELECT.
Ejemplo:
www.iplacex.cl37
Ordenando las Filas Recuperadas
El orden de las filas recuperadas en una consulta es indefinido. Para ordenar las filas
recuperadas se debe usar la cláusula ORDER BY.
Ejemplo:
www.iplacex.cl38
Ejemplo:
FROM EMPLOYEES
…. …..…….…… ……...
.… ………….… ….…..
www.iplacex.cl39
¿Qué se debe hacer si quisiéramos mostrar la identificación del empleado, su apellido,
identificación del trabajo e identificación del trabajo pero sólo de aquellos empleados que
trabajan en el departamento 90?
Para restringir o limitar las filas que deben cumplir con una cierta condición para ser
procesadas por una sentencia SQL (Select, Update, Delete), se debe utilizar la cláusula
WHERE.
Una cláusula WHERE contiene una condición que debe ser evaluada y encontrada.
La cláusula WHERE puede comparar valores entre columnas, valores literal, expresiones
aritméticas o funciones.
Sintaxis:
FROM tabla
[WHERE condición(es)_comparacion];
Sintaxis:
WHERE: restringe la consulta a las filas que deben cumplir con la condición.
Donde:
• Condición de comparación.
www.iplacex.cl40
Ejemplo:
FROM EMPLOYEES
Ejemplo:
FROM employees
www.iplacex.cl41
Ejemplo:
FROM employees
La segunda sentencia muestra el apellido y fecha de contrato del o los empleados cuya
fecha de contrato sea mayor al 01 de Marzo del 2000.
www.iplacex.cl42
www.iplacex.cl43