[mysql]——Agregar, eliminar, modificar y consultar tablas

SQL

 

Tabla de contenido

preámbulo 

(1) Crear operación

1. Una sola fila de datos + inserción de columna completa

2. Varias filas de datos + inserción de columna especificada

3. Insertar de lo contrario actualizar

4. Reemplazo directo

(2) Recuperar operación

 1. SELECCIONAR columna

1️⃣Consulta de columna completa

2️⃣Consulta de columna especificada

3️⃣El campo de consulta es una expresión.

4️⃣Especifique alias para los resultados de la consulta

5️⃣Deduplicación de resultados

2, DONDE condición

3. Clasificación de resultados

4. Filtrar resultados de paginación

(3) Operación de actualización

(4) Eliminar operación

1. Eliminar datos

2. Truncar tabla

(5) Insertar resultados de la consulta

(6) Función de agregación

(7) Uso de la cláusula group by

Resumir


preámbulo 

CRUD se refiere a operaciones comunes en sistemas de almacenamiento de datos, incluidas Crear, Recuperar, Actualizar y Eliminar. Es un modelo de operación de datos general ampliamente utilizado en bases de datos y otros sistemas de gestión de datos.

A continuación se muestra una breve descripción de cada operación:

  1. Crear : se utiliza para crear nuevos registros o entidades en el sistema de almacenamiento de datos. Esto puede ser insertar un nuevo registro de datos, crear un nuevo archivo o agregar un nuevo registro a la base de datos, etc.

  2. Recuperar : se utiliza para leer registros o entidades existentes del sistema de almacenamiento de datos. Esto podría ser consultar datos en una base de datos en función de condiciones específicas, leer el contenido de un archivo u obtener valores de propiedad de un objeto específico, etc.

  3. Actualización : se utiliza para modificar registros o entidades existentes en el sistema de almacenamiento de datos. Esto podría ser actualizar información en una base de datos, modificar el contenido de un archivo o cambiar el valor de propiedad de un objeto.

  4. Eliminar : se utiliza para eliminar un registro o entidad existente del sistema de almacenamiento de datos. Esto puede ser eliminar datos de la base de datos, eliminar archivos o destruir objetos, etc.

Estas operaciones pueden ampliarse y combinarse aún más para satisfacer necesidades más complejas. Mediante las operaciones anteriores, puede agregar, eliminar, modificar y consultar los datos de la tabla.


(1) Crear operación

La operación CREATE en MySQL se utiliza para crear objetos como nuevas bases de datos, tablas, vistas, índices o procedimientos almacenados. La siguiente es una explicación detallada de varios usos comunes de la operación CREATE en MySQL:

gramática:

INSERT [INTO] table_name
    [(column [, column] ...)]
    VALUES (value_list) [, (value_list)] ...

value_list: value, [, value] ...

Caso:

  • A continuación, simplemente creo una tabla llamada estudiantes. detalles de la siguiente manera:
 CREATE TABLE students (
    -> id INT UNSIGNED PRIMARY KEY AUTO_INCREMENT,
    -> sn INT NOT NULL UNIQUE COMMENT '学号',
    -> name VARCHAR(20) NOT NULL,
    -> qq VARCHAR(20) unique key
    -> );

  • Los detalles se muestran en la siguiente figura:


1. Una sola fila de datos + inserción de columna completa

 【ilustrar】

  1. En primer lugar, debido a que no hay paréntesis en el lado izquierdo de los valores para indicar la situación de inserción, el valor predeterminado aquí es la inserción completa;
  2. Al insertar, no necesita especificar la identificación (por supuesto, debe insertar datos explícitamente en esas columnas en ese momento), luego mysql usará el valor predeterminado para el incremento automático;
  3. El orden de las columnas y los valores en la declaración de inserción debe coincidir con el orden de las columnas definidas en la tabla, y los valores correspondientes deben proporcionarse entre paréntesis después de la palabra clave VALUES. Si se permite que algunas columnas estén vacías, se puede usar NULL para representarlas.

2. Varias filas de datos + inserción de columna especificada

Muestra directamente el código. detalles de la siguiente manera:

  •  Inserte dos registros. El número de value_list debe ser coherente con el número y el orden de las columnas especificadas.

3. Insertar de lo contrario actualizar

La inserción falla porque el valor correspondiente a la clave primaria o clave única ya existe:

En la situación anterior, podemos realizar selectivamente la sintaxis de la operación de actualización de sincronización:
 

INSERT ... ON DUPLICATE KEY UPDATE
    column = value [, column = value] ...

Ejemplo de código: 

  • Cuando insertamos datos, a menudo se mostrará una fila más adelante: x fila afectada 


4. Reemplazo directo

Su función es muy sencilla, la siguiente:

  1. -- Si no hay conflicto con la clave principal o la clave única, insértela directamente;
  2. -- Si la clave principal o la clave única entran en conflicto, elimínela y luego insértela.
     

Visualización de código:


(2) Recuperar operación

La operación Recuperar se utiliza para recuperar datos de la base de datos. En MySQL, la operación de recuperación más utilizada es utilizar la instrucción de selección para realizar consultas.

gramática:

SELECT
    [DISTINCT] {* | {column [, column] ...}
    [FROM table_name]
    [WHERE ...]
    [ORDER BY column [ASC | DESC], ...]
    LIMIT ...

Caso:

  •  A continuación, realizamos la operación de inserción:


 1. SELECCIONAR columna


1️⃣Consulta de columna completa

Para consultar la columna completa de una tabla en MySQL, puede utilizar la declaración. Esto devolverá datos para todas las columnas y todas las filas de la tabla. SELECT *

  • A continuación, realice operaciones de consulta en la tabla anterior:

 【ilustrar】

Generalmente no se recomienda utilizar * para consultas de columnas completas:

  • 1. Cuantas más columnas se consulten, mayor será la cantidad de datos que se deben transmitir;
  • 2. Puede afectar el uso de índices. (El índice se explicará en cursos posteriores)
     

2️⃣Consulta de columna especificada
 

Por lo tanto, basándose en las deficiencias de las consultas de columnas completas, es mejor especificar explícitamente las columnas requeridas para reducir la transferencia de datos y el tiempo de consulta.

  • Si solo necesita una columna específica en la tabla de consulta, puede *reemplazarla con el nombre de la columna deseada, comoSELECT 列1, 列2, ... FROM 表名;
  • Esto mejora la eficiencia de las consultas y reduce la transferencia de datos innecesaria.

3️⃣El campo de consulta es una expresión.

En MySQL, puedes usar expresiones para consultar campos. Las expresiones pueden ser operaciones matemáticas, operaciones de cadenas, operaciones lógicas o llamadas a funciones, etc.

  • ①La expresión no contiene campos.

  • ②La expresión contiene un campo.

  •  ③La expresión contiene varios campos.

4️⃣Especifique alias para los resultados de la consulta

En MySQL, puede utilizar la palabra clave as (escribible o no) para especificar un alias para los resultados de la consulta.

gramática:

SELECT column [AS] alias_name [...] FROM table_name;

  • El siguiente es un ejemplo (alias de las tres puntuaciones de materias anteriores):

  •  O de la siguiente manera:

5️⃣Deduplicación de resultados


2, DONDE condición

En MySQL, WHEREpuede utilizar palabras clave para agregar condiciones para filtrar los resultados de la consulta. WHERELa cláusula le permite especificar una o más condiciones y solo devolver filas que cumplan esas condiciones.

Operadores de comparación:
 

Operadores logicos:
 

Notas de autoaprendizaje del lenguaje C——Símbolos de operación (6) -Zhihu

Caso

  • ① Estudiantes que reprobaron inglés y sus puntajes en inglés (< 60)


  • ②Estudiantes cuyas puntuaciones en chino son [80, 90] y sus puntuaciones en chino

 En segundo lugar, además de usar y arriba, también puedes usar la expresión [entre y]:


  • ③ Estudiantes cuyos puntajes en matemáticas son 58 o 59 o 98 o 99 y sus puntajes en matemáticas

Además de los métodos anteriores, también puedes utilizar  condiciones IN :


  • ④Compañeros de clase  llamados Sun y compañeros de clase llamados Sun
     

 De lo contrario, _ coincide exactamente con un carácter arbitrario:


  • ⑤ Estudiantes cuyos puntajes en chino son mejores que sus puntajes en inglés


  • ⑥ Estudiantes cuyo puntaje total sea inferior a 200 puntos


  • ⑦ Estudiantes cuyo puntaje en chino es >80 y cuyo apellido no es Sun


  • ⑧ Estudiante Sun; de lo contrario, se requiere que la puntuación total sea > 200 y la puntuación en chino sea < puntuación en Matemáticas y la puntuación en inglés sea > 80


  • ⑨ consulta NULA


3. Clasificación de resultados

En MySQL, puede utilizar ORDER BYla cláusula para ordenar los resultados de la consulta. ORDER BY La cláusula le permite especificar una o más columnas para ordenar.

gramática:

-- ASC 为升序(从小到大)
-- DESC 为降序(从大到小)
-- 默认为 ASC

    SELECT ... FROM table_name [WHERE ...]
        ORDER BY column [ASC|DESC], [...];
  • Nota : Para consultas sin una cláusula ORDER BY, el orden devuelto no está definido. Nunca confíe en este orden.
     

【Caso】

  • ① Los puntajes de los estudiantes y de matemáticas se muestran en orden ascendente de puntajes de matemáticas.


  • ② Compañeros de clase y números QQ, mostrados en orden por números QQ


  • ③ Verifique las puntuaciones de los estudiantes en cada materia y muéstrelas en orden descendente de matemáticas, orden ascendente de inglés y orden ascendente de chino.


  • ④ Consulta a tus compañeros y puntuaciones totales, de mayor a menor

  •  Además de los métodos anteriores, también se pueden utilizar alias de columna en la cláusula ORDER BY.


  • ⑤ Consulta los puntajes de matemáticas de los estudiantes llamados Sun o Cao. Los resultados se muestran en orden de puntajes de matemáticas de mayor a menor.


4. Filtrar resultados de paginación

En MySQL, puede utilizar LIMIT las palabras clave y OFFSET para filtrar resultados paginados.

  1. LIMIT Se utiliza para limitar el número de filas devueltas en los resultados de la consulta;
  2. Se OFFSET utiliza para especificar desde qué fila comenzar a devolver resultados.

gramática:

-- El índice inicial es 0


-- A partir de s, filtrar n resultados

  • SELECCIONAR... DESDE nombre_tabla [DONDE...] [ORDENAR POR...] LIMIT s, n;


-- A partir de 0, filtrar n resultados

  • SELECCIONAR... DESDE nombre_tabla [DONDE...] [ORDENAR POR...] LÍMITE n;


- A partir de s, filtre n resultados, que es más claro que el segundo uso, se recomienda utilizar

  • SELECCIONAR... DESDE nombre_tabla [DONDE...] [ORDENAR POR...] LÍMITE n COMPENSACIÓN s;

sugerencia:

  • Al consultar una tabla desconocida, es mejor agregar un LÍMITE 1 para evitar que la base de datos se bloquee al consultar todos los datos de la tabla porque los datos de la tabla son demasiado grandes.

Paginación por id, 3 registros por página, mostrando las páginas 1, 2 y 3 respectivamente.


(3) Operación de actualización

En MySQL, se utilizan UPDATE declaraciones para modificar datos en las tablas de la base de datos. UPDATELas declaraciones se utilizan para actualizar una o más filas de una tabla.

gramática:

UPDATE table_name SET column = expr [, column = expr ...]
    [WHERE ...] [ORDER BY ...] [LIMIT ...]
  • Actualizar los valores de las columnas de los resultados de la consulta.
     

caso:

  • ① Cambiar la puntuación de matemáticas de Sun Wukong a 80 puntos


  • ② Cambiar la puntuación de matemáticas de Cao Mengde a 60 puntos y su puntuación de chino a 70 puntos.


  • ③ Agregue 30 puntos a los puntajes de matemáticas de los tres estudiantes con los puntajes totales más bajos.


  • ④ Actualice las puntuaciones de chino de todos los estudiantes al doble del valor original

  • Nota : ¡Utilice la declaración que actualiza toda la tabla con precaución! ! !
     

(4) Eliminar operación

1. Eliminar datos

gramática:

DELETE FROM table_name [WHERE ...] [ORDER BY ...] [LIMIT ...]


Caso:

  • ① Eliminar los puntajes de las pruebas de Sun Wukong
     

 


  • ② Eliminar todos los datos de la tabla

 A continuación insertamos datos:

 


2. Truncar tabla

En MySQL, puede utilizar la declaración para truncar (borrar) datos en una tabla de base de datos. Esta operación elimina todas las filas de la tabla y libera el espacio de almacenamiento asociado. TRUNCATE TABLE

gramática:

TRUNCATE [TABLE] table_name

Nota: Utilice esta operación con precaución.

  • 1. Solo puede operar en toda la tabla y no puede operar en datos parciales como DELETE;
  • 2. De hecho, MySQL no opera con datos, por lo que es más rápido que DELETE, pero cuando TRUNCATE elimina datos, no realiza la transacción real, por lo que no se puede revertir.
  • 3. Restablecerá el elemento AUTO_INCREMENT
     

Preparar datos de prueba:

 

 

 


(5) Insertar resultados de la consulta

En MySQL, se utilizan declaraciones para insertar resultados de consultas en una tabla. Esto facilita la inserción de resultados de consultas de una tabla en otra tabla como datos. INSERT INTO ... SELECT

gramática:

INSERT INTO table_name [(column [, column ...])] SELECT ...

Caso : Eliminar registros duplicados en la tabla. Solo puede haber una copia de datos duplicados.

  • 1. Implementar la preparación de datos 

 Idea:

  • ① Cree una tabla vacía no_duplicate_table, la estructura es la misma que duplicada_table
     

 

  • ② Inserte los datos deduplicados de duplicado_table en no_duplicate_table

 

  • ③ Implementar operaciones de deduplicación atómica cambiando el nombre de la tabla

 


(6) Función de agregación

Las funciones de agregación son funciones que se utilizan para realizar cálculos y estadísticas sobre datos y devuelven un resultado único basado en un conjunto de valores. En MySQL, las funciones agregadas comunes incluyen las siguientes:

¿Cuánto tiempo lleva aprender SQL?  ¿Tienes alguna buena información o vídeos para recomendar?  - Saber casi

 

Caso:

  • ① Cuente cuántos estudiantes hay en la clase.
     

 

  •  ② Cuente la cantidad de números QQ recopilados por la clase


 

 

  • ③ Cuente el número de puntuaciones de matemáticas en este examen

 


  • ④ Puntaje total de puntajes de matemáticas estadísticas

 


  • ⑤ Puntuación total media estadística

 


  • ⑥ Volver a la puntuación más alta en inglés

 


  • ⑦ Volver > Puntuación mínima en matemáticas de 70 puntos o más
     

 


(7) Uso de la cláusula group by

La cláusula GROUP BY es una declaración SQL utilizada para agrupar conjuntos de resultados. A través de la cláusula GROUP BY, puede agrupar los resultados de la consulta según columnas especificadas y aplicar funciones agregadas a cada grupo para su cálculo.

Los siguientes son ejemplos de uso de la cláusula GROUP BY:

SELECT column1, aggregate_function(column2)
FROM table_name
GROUP BY column1;
  • En el ejemplo anterior, column1es el nombre de la columna que debe agruparse, aggregate_function(column2)es la función agregada que se aplicará y table_namees el nombre de la tabla.

Por ejemplo, supongamos que tenemos una tabla llamada "pedidos" con las columnas "id_cliente", "id_producto" y "cantidad", y queremos agrupar los pedidos por "id_producto" y calcular las ventas totales de cada producto:

SELECT product_id, SUM(quantity)
FROM orders
GROUP BY product_id;
  • En el ejemplo anterior, la declaración se utiliza SELECT product_id, SUM(quantity) FROM orders GROUP BY product_idpara agrupar la tabla "pedidos" de acuerdo con la columna "product_id" y aplicar la función agregada SUM a la columna "cantidad" en cada grupo para calcular el volumen total de ventas de cada producto.

Además de una sola columna, la cláusula GROUP BY puede especificar varias columnas para agrupar, por ejemplo:

SELECT column1, column2, aggregate_function(column3)
FROM table_name
GROUP BY column1, column2;

Resumir

Lo anterior trata sobre operaciones comunes de consulta de datos en MySQL. A continuación, resumamos brevemente el contenido de este artículo. ! !

Las consultas básicas de datos MySQL se pueden lograr utilizando la instrucción SELECT y otras cláusulas relacionadas.

  • Consulta todas las columnas:
SELECT * FROM table_name;

Esto devolverá todas las columnas de la tabla especificada.

  • Consultar columnas específicas:
SELECT column1, column2, ... FROM table_name;

Puede especificar los nombres de las columnas a consultar, separados por comas, para devolver datos solo para esas columnas.

  • Consulta condicional:
SELECT * FROM table_name WHERE condition;

Utilice la cláusula WHERE para agregar condiciones y filtrar filas que cumplan con las condiciones. Por ejemplo, WHERE age > 18se devolverán filas con una antigüedad mayor a 18 años.

  • Utilice funciones agregadas:
SELECT aggregate_function(column) FROM table_name;

Las funciones agregadas comunes incluyen COUNT, SUM, AVG, MAX y MIN. Puede aplicar una función agregada a una columna y devolver el resultado calculado.

  • Ordenar resultados de la consulta:
SELECT * FROM table_name ORDER BY column ASC|DESC;

Utilice la cláusula ORDER BY para ordenar en orden ascendente (ASC) o descendente (DESC) por columnas especificadas.

  • Resultados de la consulta de deduplicación:
SELECT DISTINCT column FROM table_name;

Utilice la palabra clave DISTINCT para eliminar filas duplicadas de los resultados de la consulta y devolver solo valores únicos.

  • Consulta de grupo:
SELECT column1, aggregate_function(column2) FROM table_name GROUP BY column1;

Utilice la cláusula GROUP BY para agrupar resultados y aplicar una función agregada a cada grupo.

En este punto finaliza la explicación de esta consulta de datos. ¡Gracias a todos por mirar y apoyar! ! !

 

Supongo que te gusta

Origin blog.csdn.net/m0_56069910/article/details/132305315
Recomendado
Clasificación