Alvaruky / Resumen-Consultas

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Cabecera-Salesianos

RESUMEN CONSULTAS

RESUMEN

SQL (Structured Query Language) es un lenguaje de programación utilizado para administrar y manipular datos en bases de datos relacionales. Se utiliza para realizar consultas, actualizaciones y eliminaciones de datos, así como para crear y modificar la estructura de las bases de datos.

Las consultas SQL son instrucciones que se utilizan para recuperar datos específicos de una base de datos. Hay varios tipos de consultas básicas y avanzadas que se pueden utilizar en SQL:

CONSULTAS BÁSICAS

  • SELECT: esta consulta se utiliza para seleccionar datos específicos de una tabla o varias tablas. La sintaxis básica de SELECT es: SELECT columnas FROM tabla.
  • WHERE: esta consulta se utiliza para filtrar los datos según una condición específica. La sintaxis básica de WHERE es: WHERE condición.
  • ORDER BY: esta consulta se utiliza para ordenar los resultados en orden ascendente o descendente según una o varias columnas. La sintaxis básica de ORDER BY es: ORDER BY columnas ASC/DESC.

CONSULTAS AVANZADAS

  • JOIN: esta consulta se utiliza para combinar datos de dos o más tablas. Hay varios tipos de JOIN, incluyendo INNER JOIN, LEFT JOIN, RIGHT JOIN y FULL OUTER JOIN.
  • GROUP BY: esta consulta se utiliza para agrupar los datos según una o varias columnas y realizar operaciones de agregación en los grupos resultantes, como SUM, AVG o COUNT. La sintaxis básica de GROUP BY es: GROUP BY columnas.
  • HAVING: esta consulta se utiliza para filtrar los grupos resultantes de la consulta GROUP BY según una condición específica. La sintaxis básica de HAVING es: HAVING condición.
  • UNION: esta consulta se utiliza para combinar los resultados de dos o más consultas SELECT en una sola tabla. La sintaxis básica de UNION es: SELECT columnas FROM tabla1 UNION SELECT columnas FROM tabla2.

En resumen, SQL es un lenguaje de programación utilizado para administrar y manipular datos en bases de datos relacionales. Las consultas SQL se utilizan para recuperar datos específicos de una base de datos, y hay varios tipos de consultas básicas y avanzadas que se pueden utilizar. Las consultas básicas incluyen SELECT, WHERE y ORDER BY, mientras que las consultas avanzadas incluyen JOIN, GROUP BY, HAVING y UNION.

CONSULTA CREATE TABLE

create table alumnos(
   dni char(9) constraint alumnos_pk primary key,  
   nombre varchar(50) constraint alumnos_nn1 not null,  
   apellido1 varchar(50) constraint alumnos_nn2 not null,  
   apellido2 varchar(50) constraint alumnos_nn3 not null,  
   direccion varchar(50),  
   telefono char(9),  
   edad number(2),  
   cif char(9) constraint alumnos_fk references empresas  
          on delete set null);  

El código que puedes observar en pantalla se utiliza para crear una tabla con el nombre de “alumnos” en una base de datos que tenemos en clase. La tabla “alumnos” contiene toda la información sobre los estudiantes del ficticio centro donde también se incluirán el DNI, nombre y apellidos, dirección y teléfono, la edad y el CIF de la empresa a la que el alumno este asociado.

El primer campo que tenemos es el campo que hace referencia al campo del “DNI” el cual hemos definido con un carácter de (char) lo que eso significa es que tiene una longitud máxima de 9 caracteres. A parte de lo anterior este campo se define como una clave primaria (primary key) de la tabla, por lo cual cada valor que nos permitirá escribir será un valor único en toda la tabla, esto nos sirve para identificar un valor único en la tabla.

dni char(9) constraint alumnos_pk primary key;  

El segundo campo llamado “nombre”, se declara como una cadena de caracteres como el anterior (varchar) solo que ahora la longitud máxima cambia ligeramente a 50 caracteres, a parte de esto este campo se define como no nulo (not null), con lo que este campo es obligatorio siempre que se haga un registro en la base de datos.

nombre varchar(50) constraint alumnos_nn1 not null;

El tercer y cuarto campo podemos observar que hacen referencia a los apellidos, al “apellido1” y al “apellido2”, estos campos, como los anteriores ya mencionados son declarados como cadenas de caracteres con una longitud máxima de 50 caracteres y también se definen como no nulos.

apellido1 varchar(50) constraint alumnos_nn2 not null,  
apellido2 varchar(50) constraint alumnos_nn3 not null;

El quinto campo con el nombre de “dirección”, que también se declara como otra cadena de caracteres como los anteriores campos con una longitud máima de 50 caracteres, al contrario que los anteriores campos que le suceden este campo no se define como no nulo (not null), esto significa que si que está permitido que algunos registros que se realicen en la base de datos no tengan un valor en este campo, en otras palabras, puedes dejar este campo en blanco que no pasará nada.

direccion varchar(50);

En el sexto campo de nuestro código de SQL aparece el campo llamado como “teléfono” declarado como todos los anteriores como como un carácter (char) con una longitud máxima de 9 caracteres. Al igual que el campo "dirección", este campo no se define como no nulo (not null) con lo que también te permite dejar este campo sin rellenar.

telefono char(9);

En el séptimo campo llamado “edad”, que es declarado con la función (number) de número con una longitud máxima de 2 caracteres e igual que los dos anteriores campos este campo también permite el dejarle en blanco.

edad number(2);

El octavo y último campo es el campo llamado "cif", que se declara como un carácter (char) con una longitud máxima de 9 caracteres. Este campo es definido como clave externa (foreign key) y este hace referencia a la tabla "empresas", lo que significa que cada valor en este campo debe coincidir con un valor ya existente en la tabla de "empresas" de la base de datos. Además, se especifica la acción a tomar en caso de que se elimine un registro de la tabla "empresas": en este caso, se establecerá el valor del campo "cif" en nulo (null) para todos los registros en la tabla "alumnos" que hagan referencia a ese registro eliminado de la base de datos.

cif char(9) constraint alumnos_fk references empresas  
      on delete set null;  

CONSULTA INSERT INTO

INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('INFOR031', 'Linux II', 90, null, null);  
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('MECAN011', 'Soldadura', 200, null, null);  
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('OFICG001', 'Mecanografía', 30, null, null);  
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('SGBDR010', 'Introducción a Oracle', 90, null, null);  
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('SGBDR011', 'Programación PL/SQL', 110, null, null););    

Este código se utiliza para insertar datos en la tabla "TIPOS_CURSO" de nuestra base de datos.

Cada instrucción "INSERT INTO" introduce una fila en la tabla "TIPOS_CURSO" con valores específicos para cada columna.

La primera instrucción "INSERT INTO" introduce una fila en la tabla "TIPOS_CURSO" con los siguientes valores:

  • El valor "INFOR031" se inserta en la columna "COD_CURSO".
  • El valor "Linux II" se inserta en la columna "TITULO".
  • El valor 90 se inserta en la columna "DURACION".
  • El valor null se inserta en las columnas "TEMARIO" y "MATERIAS".
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('INFOR031', 'Linux II', 90, null, null);  

La segunda instrucción "INSERT INTO" introduce otra fila en la tabla "TIPOS_CURSO" con los siguientes valores:

  • El valor "MECAN011" se inserta en la columna "COD_CURSO".
  • El valor "Soldadura" se inserta en la columna "TITULO".
  • El valor 200 se inserta en la columna "DURACION".
  • El valor null se inserta en las columnas "TEMARIO" y "MATERIAS".
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('MECAN011', 'Soldadura', 200, null, null);  

La tercera instrucción "INSERT INTO" introduce otra fila en la tabla "TIPOS_CURSO" con los siguientes valores:

  • El valor "OFICG001" se inserta en la columna "COD_CURSO".
  • El valor "Mecanografía" se inserta en la columna "TITULO".
  • El valor 30 se inserta en la columna "DURACION".
  • El valor null se inserta en las columnas "TEMARIO" y "MATERIAS".
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('OFICG001', 'Mecanografía', 30, null, null);  

La cuarta instrucción "INSERT INTO" introduce otra fila en la tabla "TIPOS_CURSO" con los siguientes valores:

  • El valor "SGBDR010" se inserta en la columna "COD_CURSO".
  • El valor "Introducción a Oracle" se inserta en la columna "TITULO".
  • El valor 90 se inserta en la columna "DURACION".
  • El valor null se inserta en las columnas "TEMARIO" y "MATERIAS".
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('SGBDR010', 'Introducción a Oracle', 90, null, null); 

La quinta instrucción "INSERT INTO" introduce otra fila en la tabla "TIPOS_CURSO" con los siguientes valores:

  • El valor "SGBDR011" se inserta en la columna "COD_CURSO".
  • El valor "Programación PL/SQL" se inserta en la columna "TITULO".
  • El valor 110 se inserta en la columna "DURACION".
  • El valor null se inserta en las columnas "TEMARIO" y "MATERIAS".
INSERT INTO TIPOS_CURSO (COD_CURSO, TITULO, DURACION, TEMARIO, MATERIAS) VALUES ('SGBDR011', 'Programación PL/SQL', 110, null, null); 

En resumen, este código inserta cinco filas en la tabla "TIPOS_CURSO" de una base de datos, cada una con valores específicos para cada columna.

CONSULTA SELECT JOIN

SELECT NOMBRE, LOCALIDAD, TIPO, MODELO, PRECIO_COMPRA  
FROM EMPRESAS  
JOIN SUMINISTROS S USING(CIF)  
JOIN PIEZAS W USING(MODELO,TIPO);  

Este código se utiliza para realizar una consulta en la base de datos. La consulta busca seleccionar los nombres, localidades, tipos, modelos y precios de compra de las empresas que han adquirido suministros y de las piezas que han utilizado dichas empresas.

La consulta está formada por tres instrucciones JOIN que unen tres tablas diferentes de la base de datos: EMPRESAS, SUMINISTROS y PIEZAS.

La primera instrucción JOIN se utiliza para unir la tabla EMPRESAS con la tabla SUMINISTROS. La sintaxis es la siguiente:

JOIN SUMINISTROS S USING(CIF); 

Esto significa que se unen las dos tablas mediante la columna "CIF" de la tabla EMPRESAS y la columna "CIF" de la tabla SUMINISTROS. La palabra clave "USING" se utiliza para especificar las columnas que se utilizan para unir las dos tablas. En este caso, se utiliza "CIF" porque es la columna que tienen en común.

La segunda instrucción JOIN se utiliza para unir la tabla SUMINISTROS con la tabla PIEZAS. La sintaxis es la siguiente:

JOIN PIEZAS W USING(MODELO,TIPO); 

Esto significa que se unen las dos tablas mediante las columnas "MODELO" y "TIPO". La palabra clave "USING" se utiliza de nuevo para especificar las columnas que se utilizan para unir las dos tablas.

La última parte de la consulta es la siguiente:

SELECT NOMBRE, LOCALIDAD, TIPO, MODELO, PRECIO_COMPRA; 

Esto significa que se seleccionan las columnas "NOMBRE", "LOCALIDAD", "TIPO", "MODELO" y "PRECIO_COMPRA" de las tres tablas unidas.

En resumen, esta consulta SQL vincula las tablas "EMPRESAS", "SUMINISTROS" y "PIEZAS" utilizando las claves externas e internas apropiadas, y selecciona información específica de estas tablas. La consulta devuelve un conjunto de resultados que incluye los nombres de las empresas, la localidad, el tipo y modelo de pieza, y el precio de compra correspondiente.

CONSULTA SELECT WHERE

SELECT nombre,apellido1,apellido2,telefono  
FROM alumnos  
WHERE INSTR(telefono,'5',1,2)>0;  

Este código corresponde a una consulta en lenguaje SQL (Structured Query Language) que busca obtener una lista de nombres, apellidos y teléfonos de alumnos, pero con la condición de que los teléfonos tengan el número "5" en la segunda posición.

Veamos con detalle cada parte del código:

SELECT nombre,apellido1,apellido2,telefono

Esta es la cláusula SELECT, que indica las columnas que queremos recuperar de la tabla "alumnos". En este caso, se especifica que se desea obtener la columna "nombre", "apellido1", "apellido2" y "telefono".

FROM alumnos

Esta cláusula indica la tabla sobre la cual se va a realizar la consulta. En este caso, la tabla es "alumnos".

WHERE INSTR(telefono,'5',1,2)>0;  

Esta es la cláusula WHERE, que permite filtrar los resultados de la consulta en función de una condición. En este caso, se utiliza la función INSTR() para buscar la posición de la primera ocurrencia del número "5" en la cadena de texto del campo "telefono". Los parámetros de la función son:

  • La cadena de texto a buscar: "telefono".
  • La cadena de texto a buscar dentro de la primera: "5".
  • La posición inicial de la búsqueda: 1 (primer caracter).
  • La cantidad de caracteres a considerar: 2 (buscando solo en la segunda posición).

El resultado de la función INSTR() es un número entero que indica la posición de la primera ocurrencia de la cadena de texto buscada. Si la cadena no se encuentra en el texto, el valor devuelto es cero.

Por último, se evalúa si el resultado de la función INSTR() es mayor que cero. Si es así, significa que la cadena "5" fue encontrada en la segunda posición del campo "telefono" y, por lo tanto, se incluirá el registro en el resultado de la consulta. Si el resultado de la función es cero, el registro será descartado.

En resumen, la consulta SQL busca obtener la lista de nombres, apellidos y teléfonos de alumnos cuyos teléfonos tengan el número "5" en la segunda posición.

REFLEXIÓN PERSONAL

PERMISOS CÓDIGO

Oracle-Academy

👇¡Instagram Centro Don Bosco!

donbosco

About