[MySQL] Agregar, eliminar, verificar y modificar la tabla

Agregar, eliminar, verificar

Nuevo

Sintaxis:

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

Caso:
- Crear un formulario de estudiante

CREATE TABLE student (
   id INT,
   sn INT comment '学号',
   name VARCHAR(20) comment '姓名',
   qq_mail VARCHAR(20) comment 'QQ邮箱'
);

1.1 Datos de una fila + inserción de columna completa

INSERT INTO student VALUES (100, 10000, '唐三藏', NULL);

Inserte la descripción de la imagen aquí

1.2 Datos de varias filas + inserción de columna especificada

插入两条记录,value_list 数量必须和指定列数量及顺序一致
INSERT INTO student (id, sn, name) VALUES
 (102, 20001, '曹孟德'),
 (103, 20002, '孙仲谋');

Inserte la descripción de la imagen aquí

2. Consulta

Sintaxis:

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

Ejemplos:

2.1 Consulta de columna completa

Sintaxis:

select * from 表名(student);

Inserte la descripción de la imagen aquí

2.2 Especificar consulta de columna

Inserte la descripción de la imagen aquí

2.3 Alias

Sintaxis:

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

Ejemplos:

DROP TABLE IF EXISTS exam_result;
CREATE TABLE exam_result (
 id INT,
 name VARCHAR(20),
 chinese DECIMAL(3,1),
 math DECIMAL(3,1),
 english DECIMAL(3,1)
);
INSERT INTO exam_result (id,name, chinese, math, english) VALUES
    ->  (1,'唐三藏', 67, 98, 56),
    ->  (2,'孙悟空', 87.5, 78, 77),
    ->  (3,'猪悟能', 88, 98.5, 90),
    ->  (4,'曹孟德', 82, 84, 67),
    ->  (5,'刘玄德', 55.5, 85, 45),
    ->  (6,'孙权', 70, 73, 78.5),
    ->  (7,'宋公明', 75, 65, 30);

En el conjunto de resultados, el nombre de la columna del encabezado de tabla = alias

select id,name,chinese + math +english from exam_result;

Inserte la descripción de la imagen aquí

2.4 Deduplicación: DISTINCT

Ejemplos:

SELECT math FROM exam_result;

Inserte la descripción de la imagen aquí
Deduplicación:

select distinct math from exam_result;

Inserte la descripción de la imagen aquí

2.5 Clasificación: ORDENAR POR

Sintaxis:

-- ASC 为升序(从小到大)
-- DESC 为降序(从大到小)
-- 默认为 ASC
SELECT ... FROM table_name [WHERE ...]
 ORDER BY column [ASC|DESC], [...];
  1. Para consultas sin una cláusula ORDER BY, el pedido devuelto no está definido. Nunca confíe en este pedido
  2. La clasificación de datos NULL se considera menor que cualquier valor, el orden ascendente aparece en la parte superior, el orden descendente aparece en la parte inferior
查询ID和姓名,按ID进行排序
select id,name from student order by id;

Inserte la descripción de la imagen aquí

2.6 Consulta condicional: DÓNDE

Operadores de comparación
Inserte la descripción de la imagen aquí
Nota:

  1. WHERE las condiciones pueden usar expresiones, pero no pueden usar alias.
  2. La prioridad de AND es mayor que la de OR. Cuando se usa al mismo tiempo, debe usar paréntesis () para ajustar la parte de la ejecución de prioridad.
    Caso:
    consulta básica:
-- 查询英语不及格的同学及英语成绩 ( < 60 )
SELECT name, english FROM exam_result WHERE english < 60;

Inserte la descripción de la imagen aquí
- Consultar estudiantes cuyos puntajes de idioma son mejores que el inglés

SELECT name, chinese, english FROM exam_result WHERE chinese > english;

Inserte la descripción de la imagen aquí
- Consultar estudiantes con una puntuación total inferior a 200

SELECT name, chinese + math + english 总分 FROM exam_result
 WHERE chinese + math + english < 200

Inserte la descripción de la imagen aquí
AND y OR:
- Consulta a los estudiantes con una puntuación china superior a 80 puntos y una puntuación de inglés superior a 80 puntos

SELECT * FROM exam_result WHERE chinese > 80 and english > 80;

Inserte la descripción de la imagen aquí

Consulta de rango: 1. ENTRE ... Y ...

select * from exam_result where chinese between 60 and 90;

Tenga en cuenta que van desde pequeñas a grandes lata solamente
Inserte la descripción de la imagen aquí
2.IN

-- 查询数学成绩是 58 或者 59 或者 98 或者 99 分的同学及数学成绩
SELECT name, math FROM exam_result WHERE math IN (58, 59, 98, 99);

Inserte la descripción de la imagen aquí
Consulta de simulación: LIKE

select id,name from exam_result where name like '孙%';

Inserte la descripción de la imagen aquí
- _ Coincide exactamente con un personaje arbitrario

select id,name from exam_result where name like '孙_';

Inserte la descripción de la imagen aquí

3. Modificar (Actualizar)

Sintaxis:

UPDATE table_name SET column = expr [, column = expr ...]
 [WHERE ...] [ORDER BY ...] [LIMIT ...]

Caso:
- Cambia el puntaje matemático de Sun Wukong a 80 puntos

UPDATE exam_result SET math = 80 WHERE name = '孙悟空';

Inserte la descripción de la imagen aquí
- Cambió el puntaje matemático de Cao Mengde a 60 puntos y el puntaje chino a 70 puntos

UPDATE exam_result SET math = 60, chinese = 70 WHERE name = '曹孟德';

Inserte la descripción de la imagen aquí

4. Eliminar

Sintaxis:

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

- Eliminar los puntajes de las pruebas de Zhu Wuneng

delete from exam_result where name = '猪悟能';

Inserte la descripción de la imagen aquí

42 artículos originales publicados · Me gusta 154 · Visitantes más de 10,000

Supongo que te gusta

Origin blog.csdn.net/qq_43676757/article/details/105436772
Recomendado
Clasificación