Está en la página 1de 6

Explicación PRACTICA Nro.

2 – Base de Datos 1

Explicación PRACTICA Nro. 3 – Base de Datos 1 2021


Para un DBMS un QUERY o CONSULTA es un enunciado SQL que debe ser ejecutado.
El SQL es un Lenguaje de 4ta generación. En este lenguaje se indica QUÉ
información se desea obtener o procesar, y no CÓMO se debe hacerlo.
La sentencia SELECT es una operación que permite consultar los datos
almacenados en las tablas de la Base de Datos. Es una operación de sólo lectura.

select * | columna1, columna2, columna3,...


from tabla
[where <condición o predicado>];

Siguiendo el estandar SQL:


 La sentencia SELECT más sencilla consta de dos cláusulas: SELECT Y FROM
 Las sentencias SQL deben terminar con punto y coma “;”.

 Cláusula SELECT:
o Permite especificar la información que se desea obtener.
o Permite realizar lo que en el Álgebra relacional vimos como PROYECCIÓN.
o Se puede especificar una o varias columnas, o expresiones sobre las mismas
o El asterisco “*” indica que se muestren todas las columnas
o Admite opcionalmente el modificador DISTINCT, que devuelve valores o filas no
repetidas.
o Las columnas pueden tener un alias, lo que permite renombrarlas.

 Cláusula FROM:
o Permite indicar de que tabla se van a extraer los datos
o Permite realizar lo que en el Álgebra Relacional vimos como PRODUCTOS
(cartesiano, con condición o Tita, natural)

 Cláusula WHERE:
o Permite lo que en el Álgebra Relacional vimos como SELECCIÓN.
o Permite restringir filas que cumplan una determinada condición.

Cuando el DBMS ejecuta una sentencia SQL con estas tres cláusulas lo hace en el
siguiente
orden:
1. La cláusula FROM, para extraer de la Base de Datos los datos de las tablas.
2. La cláusula WHERE, devolviendo un set de datos con las filas del resultado
intermedio del paso 1 que cumplan con la condición especificada.
Explicación PRACTICA Nro. 2 – Base de Datos 1

3. La cláusula SELECT, y determina que columnas del set de datos debe devolver.
4. Si existe el modificador DISTINCT, elimina las filas repetidas del resultado

Operadores de Conjunto (UNION, INTERSECT, EXCEPT)

Dadas las siguientes tablas:

tabla1:
a B c
1 2 2
4 5 6

tabla 2:
c D e
2 5 6
7 8 9
4 5 6

a. Realizar la unión de las dos tablas.

(SELECT a, b, c
FROM tabla1)
UNION
(SELECT c, d, e
FROM tabla2);

(SELECT c, d, e
FROM tabla2)
UNION
(SELECT a, b, c
FROM tabla1);

b. Realizar una intersección entre las dos tablas.

(SELECT a, b, c
FROM tabla1)
INTERSECT
(SELECT c, d, e
FROM tabla2);

(SELECT c, d, e
FROM tabla2)
INTERSECT
(SELECT a, b, c
FROM tabla1);

c. Realizar la diferencia entre las dos tablas y ver que el orden de los operandos
modifica el resultado.

(SELECT a, b, c
FROM tabla1)
EXCEPT
Explicación PRACTICA Nro. 2 – Base de Datos 1
(SELECT c, d, e
FROM tabla2);

(SELECT c, d, e
FROM tabla2)
EXCEPT
(SELECT a, b, c
FROM tabla1);

Productos
d. Insertar la fila (3,4,5) en la tabla2.
INSERT INTO tabla2 VALUES (3,4,5);

SELECT * FROM tabla2;

e. Utilizar la cláusula INNER JOIN para combinar las tuplas de ambas tablas en que
coincida el valor de la columna “c”.
SELECT *
FROM tabla1 t1 INNER JOIN tabla2 t2 ON t1.c = t2.c;

f. ¿Cómo expresaría la anterior usando un CROSS JOIN? ¿Cuál es la diferencia entre


aplicar un NATURAL JOIN y un INNER JOIN?

SELECT *
FROM tabla1 t1, tabla2 t2
WHERE t1.c = t2.c;

SELECT *
FROM tabla1 t1 CROSS JOIN tabla2 t2
WHERE t1.c = t2.c;

g. Aplicar un LEFT OUTER JOIN de la tabla1 a la tabla2 cuyo campo de reunión es la


columna “c”.

SELECT *
FROM tabla1 t1 LEFT OUTER JOIN tabla2 t2 ON t1.c = t2.c;

h. Aplicar un RIGHT OUTER JOIN de la tabla1 a la tabla2 cuyo campo de reunión es la


columna “c”. Ver la diferencia.

SELECT *
FROM tabla1 t1 RIGHT OUTER JOIN tabla2 t2 ON t1.c = t2.c

i. Aplicar un FULL OUTER JOIN.

SELECT *
FROM tabla1 t1 FULL OUTER JOIN tabla2 t2 ON t1.c = t2.c;

Operadores de comparación
 LIKE: permite comparar cadena de caracteres usando patrones. Los patrones
pueden contener comodines:
Explicación PRACTICA Nro. 2 – Base de Datos 1

o “%”, permite representar cualquier cadena de caracteres de cualquier


longitud.
o “_”, permite representar cualquier carácter
 BETWEEN: devuelve verdadero si el valor en una columna está dentro del rango
de valores especificados en el between
 IN: devuelve verdadero si el valor de un campo o columna está dentro del
conjunto especificado.
 IS NULL:ón PRACTICA Nro. 3 – Base de Datos 1 2021
o un valor null en una columna significa que es irrelevante, que no se conoce o
no es aplicable. No es un blanco o un cero
o El estandar SQL proporciona las siguientes tablas de verdad para los operadores
AND, OR y NOT. La ausencia de valor de los nulos, hace que cualquier
comparación con un nulo devuelva un valor desconocido, dando lugar a una
lógica de 3 valores en SQL, V:verdadero, F:falso o D:Desconocido.

o Las expresiones columna = null y columna <> null siempre devuelven


desconocido. Ni siquiera puede decirse que dos nulos sean iguales o diferentes
entre sí. Por lo que es necesario el operador IS NULL.
 Procesamiento de fechas:
o Fecha actual: CURRENT_DAY
o Extraer parte de una fecha:
 Date_part
 Extract
 To_char
o Convertir cadena de caracteres a fecha:
 To_date
 Procesamiento de cadena de caracteres:
o Se escriben entre comillas simples
o Operador de concatenación: “||”
o Upper(“cadena”): convierte a mayúsculas
o Lower(“cadena”): convierte a minúsculas
o Trim (“ cadena ”): elimina espacios en blanco delante y detrás de la cadena
Explicación PRACTICA Nro. 2 – Base de Datos 1

Backup de la base en PlataformaED: backup ventas.sql

BUSQUEDA POR CONTENIDO. USO DEL LIKE


Explicación PRACTICA Nro. 3 – Base de Datos 1 2021
 Obtener el nombre y el domicilio de los clientes que viven en la provincia de
Buenos Aires
 Obtener el nombre, domicilio y provincia de los clientes que viven en la
provincia de Corrientes o Misiones.

ORDENAR EL RESULTADO
 Obtener un listado de las facturas realizadas especificando número de factura,
nombre del producto y cantidad vendida, ordenando el resultado por cantidad
vendida de mayor a menor.

o Uso de INNER JOIN en el FROM con más de una tabla: La condición de


reunión entre las tablas está generalmente compuesta de una comparación
de igualdad entre la PK y la FK de las tablas relacionadas.
o Cuando se reúnen 3 o más tablas con CROSS JOIN (producto cartesiano), se
debe especificar una condición de reunión por cada par de tablas (en este
caso 2). Si la cantidad de tablas es N, debe tener N-1 condiciones de reunión
en el WHERE.
o La operación de reunión tiene lugar de izquierda a derecha. INNER JOIN
Explicación PRACTICA Nro. 2 – Base de Datos 1

 Obtener un listado de las facturas realizadas cuya cantidad sea mayor o igual a
15 especificando número de factura, nombre del producto y cantidad vendida.
Ordene el resultado por nombre de producto y cantidad vendida.

BUSQUEDA POR RANGO. USO DEL BETWEEN


 Listar cantidad y precio de los productos vendidos a un precio mayor o igual a
5.00 y menor o igual a 10.00

OPERADORES ARITMÉTICOS

 Listar los datos completos de la factura número 01-00000002

También podría gustarte