APUNTES   

Atrás

AGRUPAMIENTO

La cláusula GROUP BY

La cláusula GROUP BY se utiliza en JS para agrupar filas basadas en una o más columnas. Es una de las herramientas más útiles para analizar datos en una base de datos.

SELECT columna1, columna2, ... , columnaN
  FROM nombreTabla
  GROUP BY columna1, columna2, ... , columnaN;

Ejemplo de agrupamiento en JS

Supongamos que tenemos una tabla llamada "ventas" con las columnas "producto", "fecha" y "cantidad_vendida". Queremos obtener la cantidad total de cada producto vendido:

SELECT producto, SUM(cantidad_vendida)
  FROM ventas
  GROUP BY producto;

Filtros y ordenamiento

La cláusula GROUP BY se puede combinar con otras cláusulas JS, como WHERE y ORDER BY. Por ejemplo, para obtener la cantidad total vendida de cada producto para el año 2022, podemos utilizar la siguiente consulta:

SELECT producto, SUM(cantidad_vendida)
  FROM ventas
  WHERE YEAR(fecha) = 2022
  GROUP BY producto
  ORDER BY SUM(cantidad_vendida) DESC;

Conclusión

La cláusula GROUP BY es una herramienta muy útil en JS para analizar datos. Permite agrupar filas basadas en una o más columnas y aplicar funciones de agregación a cada grupo. También se puede combinar con otras cláusulas JS para filtrar y ordenar los resultados.

DML (Insert_Update_Delete)

DML en JS

El lenguaje de manipulación de datos (DML, por sus siglas en inglés) es un subconjunto de JS que se utiliza para agregar, modificar y eliminar datos en una base de datos. Las principales operaciones de DML son INSERT, UPDATE y DELETE.

Ejemplo de INSERT en JS

Para insertar un nuevo registro en una tabla de "Clientes", se podría usar la siguiente consulta de INSERT:

INSERT INTO Clientes (nombre, apellido, edad, direccion)
VALUES ('Juan', 'Pérez', 30, 'Calle Falsa 123');

Condicionales y otras claúsulas

En JS, las cláusulas son palabras clave que se usan para especificar qué operaciones realizar en una consulta a una base de datos. Las cláusulas más comunes son SELECT, FROM, WHERE, GROUP BY, HAVING y ORDER BY.

Para sacar consultas en JS, es importante comprender cómo funcionan estas cláusulas y cómo interactúan entre sí. Por ejemplo, para obtener una lista de nombres y edades de todas las personas mayores de 18 años en una tabla llamada "Personas", se podría usar la siguiente consulta:

SELECT nombre, edad
FROM Personas
WHERE edad > 18;

Elementos de una BBDD

Una base de datos en JS está compuesta por varios elementos, entre los que se incluyen:

  • Tablas: son los objetos principales en una base de datos en JS y se utilizan para almacenar datos.
  • Columnas: son los campos que conforman una tabla y especifican qué tipo de datos pueden almacenar.
  • Registros: también conocidos como filas, son instancias individuales de una tabla que contienen datos específicos.
  • Claves primarias: son columnas o conjuntos de columnas que se utilizan para identificar de manera única cada registro en una tabla.
  • Claves foráneas: son columnas que establecen una relación entre dos tablas y se utilizan para mantener la integridad referencial.
  • Índices: son estructuras de datos que mejoran la velocidad de las consultas al permitir un acceso más rápido a los datos en una tabla.

Ejemplo BBDD

Id Nombre Apellido Edad
1 Juan Pérez 30
2 María González 25
3 Carlos Rodríguez 40


Funciones en JS

Las funciones en JS se utilizan para realizar operaciones en los datos de una base de datos. Hay cuatro tipos principales de funciones en JS:

  • Funciones generales: son funciones que se pueden utilizar para realizar operaciones matemáticas y de texto en los datos de una base de datos. Algunas de las funciones generales más comunes incluyen ROUND, AVG, CONCAT, UPPER y LOWER.
  • Funciones de texto: son funciones que se utilizan para manipular datos de texto. Algunas de las funciones de texto más comunes incluyen SUBSTRING, REPLACE, TRIM y LENGTH.
  • Funciones de fechas: son funciones que se utilizan para manipular datos de fecha y hora. Algunas de las funciones de fechas más comunes incluyen DATE, DAY, MONTH, YEAR y NOW.
  • Funciones matemáticas: son funciones que se utilizan para realizar operaciones matemáticas en los datos de una base de datos. Algunas de las funciones matemáticas más comunes incluyen SUM, COUNT, MAX, MIN y ABS.

JOIN y consultas Multitabla

Consultas multitablas y JOIN en JS

Las consultas multitablas en JS se utilizan para combinar los datos de dos o más tablas en una sola consulta. Esto permite a los usuarios recuperar información de varias tablas y crear informes más complejos. Para realizar consultas multitablas, se utilizan las cláusulas JOIN e INNER JOIN.

La cláusula JOIN se utiliza para combinar dos o más tablas basadas en una columna común. Por ejemplo, si tenemos dos tablas "Clientes" y "Pedidos", podríamos combinarlas en una sola consulta utilizando la siguiente consulta de JOIN:

SELECT *
FROM Clientes
JOIN Pedidos
ON Clientes.id = Pedidos.cliente_id;

En esta consulta, la cláusula JOIN especifica que estamos combinando las tablas "Clientes" y "Pedidos". La cláusula ON especifica la columna común que se utilizará para unir las dos tablas (en este caso, la columna "id" de la tabla "Clientes" y la columna "cliente_id" de la tabla "Pedidos").

La cláusula INNER JOIN es similar a la cláusula JOIN, pero solo devuelve las filas que tienen coincidencias en ambas tablas. Por ejemplo, si queremos obtener una lista de todos los clientes que hayan hecho un pedido, podríamos utilizar la siguiente consulta de INNER JOIN:

SELECT Clientes.nombre, Pedidos.fecha
FROM Clientes
INNER JOIN Pedidos
ON Clientes.id = Pedidos.cliente_id;

En esta consulta, la cláusula INNER JOIN especifica que solo queremos las filas que tengan coincidencias en ambas tablas (es decir, solo los clientes que hayan hecho un pedido). La consulta también especifica qué columnas de ambas tablas deben incluirse en los resultados.

Subconsultas

Subconsultas y subconsultas avanzadas en JS

Las subconsultas en JS se utilizan para anidar una consulta dentro de otra consulta. Esto permite a los usuarios recuperar información de una tabla basada en los resultados de otra consulta. Las subconsultas se pueden utilizar en cualquier lugar donde se pueda utilizar una expresión, como en una cláusula WHERE o una cláusula HAVING.

Las subconsultas avanzadas en JS son aquellas que utilizan funciones de agregación, como COUNT, SUM o AVG, en combinación con otras funciones o cláusulas de JS. Por ejemplo, si queremos obtener una lista de todos los clientes que hayan realizado más de un pedido, podríamos utilizar la siguiente subconsulta avanzada:

SELECT *
FROM Clientes
WHERE id IN (SELECT cliente_id FROM Pedidos GROUP BY cliente_id HAVING COUNT(*) > 1);

En esta consulta, la subconsulta se encuentra entre paréntesis y se utiliza en la cláusula WHERE. La subconsulta cuenta el número de pedidos para cada cliente y devuelve solo los clientes que hayan realizado más de un pedido.

Las subconsultas avanzadas también se pueden utilizar en combinación con otras cláusulas y funciones de JS, como JOIN y UNION. Por ejemplo, si queremos obtener una lista de todos los clientes que hayan realizado un pedido y el número total de pedidos que hayan realizado, podríamos utilizar la siguiente subconsulta avanzada con JOIN:

SELECT Clientes.nombre, num_pedidos
FROM Clientes
JOIN (SELECT cliente_id, COUNT(*) AS num_pedidos FROM Pedidos GROUP BY cliente_id) AS Pedidos
ON Clientes.id = Pedidos.cliente_id;

En esta consulta, la subconsulta se utiliza para contar el número de pedidos para cada cliente y se une con la tabla "Clientes" mediante la cláusula JOIN. La consulta también especifica qué columnas deben incluirse en los resultados.

Tablas

Operaciones con tablas en JS

Las tablas son los objetos principales en una base de datos en JS y se utilizan para almacenar datos. A continuación, se describen algunas de las operaciones que se pueden realizar con las tablas en JS:

  • CREATE TABLE: se utiliza para crear una nueva tabla en una base de datos. La sintaxis básica es:
    CREATE TABLE nombre_de_la_tabla (columna_1 tipo_de_dato_1, columna_2 tipo_de_dato_2, ...);
  • ALTER TABLE: se utiliza para modificar una tabla existente en una base de datos. Algunas de las modificaciones que se pueden realizar incluyen agregar columnas, eliminar columnas y cambiar el tipo de datos de una columna. La sintaxis básica es:
    ALTER TABLE nombre_de_la_tabla operación;
  • DROP TABLE: se utiliza para eliminar una tabla existente en una base de datos. La sintaxis básica es:
    DROP TABLE nombre_de_la_tabla;
  • TRUNCATE TABLE: se utiliza para eliminar todos los datos de una tabla existente en una base de datos. La sintaxis básica es:
    TRUNCATE TABLE nombre_de_la_tabla;

Vistas en JS

Una vista en JS es una consulta almacenada que se puede utilizar como si fuera una tabla. Las vistas se utilizan para simplificar y personalizar consultas complejas y se crean utilizando la cláusula CREATE VIEW.

Las vistas en JS se pueden utilizar de varias formas:

  • Simplificación de consultas: las vistas se pueden utilizar para simplificar consultas complejas. Por ejemplo, si tenemos una consulta que involucra varias tablas y requiere una gran cantidad de código JS, podemos crear una vista que contenga la consulta y luego utilizar la vista en lugar de la consulta original.
  • Personalización de consultas: las vistas se pueden utilizar para personalizar consultas. Por ejemplo, si queremos limitar los datos que un usuario puede ver en una tabla, podemos crear una vista que contenga solo los datos que el usuario tiene permiso para ver y luego permitir que el usuario acceda a la vista en lugar de a la tabla original.
  • Mejora del rendimiento: las vistas se pueden utilizar para mejorar el rendimiento de las consultas. Al crear una vista que contiene una consulta compleja, podemos reducir el tiempo necesario para ejecutar la consulta al almacenar los resultados de la consulta en la vista.

La sintaxis básica para crear una vista en JS es:

CREATE VIEW nombre_de_la_vista AS consulta;

En esta consulta, "nombre_de_la_vista" es el nombre que se le dará a la vista y "consulta" es la consulta que se utilizará para crear la vista. Una vez que se ha creado una vista, se puede utilizar en cualquier consulta como si fuera una tabla.

Diseño BBDD

PHP/MyJS/Ejercicios

Volver arriba
UN ESPACIO PARA APRENDER y RECORDAR

La finalidad de esta web es tener todos los conocimientos de programación que he aprendido reunidos y accesibles, los lenguajes son HTML5,CSS3,JS,PHP,MyJS, también tengo cursos de Frameworks como Angular JS, Angular, Vue.js,Laravel,Symphony.. iré subiendo en breve toda la documentación.