--Conecte a la base de datos --mysql -u root -p - Contraseña: linyifan -Crear una tabla de datos -incremento de incremento automático -LA CLAVE PRIMARIA CREAR TABLA empleado ( id TINYINT PRIMARY KEY auto_increment, nombre VARCHAR (25), género booleano, edad TINYINT, departamento VARCHAR (20), salario DOBLE (7,2) ) -Add table is_married field alter table employee add is_married TINYINT (1) -Agregar múltiples campos a la tabla alter table employee add addr varchar (20), add city varchar (20) -Eliminar el campo de la ciudad. alterar la tabla de caída de empleados -Modifique el tipo de campo de edad a smallint, no nulo: no vacío, predeterminado: predeterminado 18, y muévase a la parte posterior del campo de identificación alterar tabla empleado modificar edad smallint no nulo predeterminado 18 después de id -Modificar el campo de edad de la tabla a edades alterar tabla empleado cambiar edad edades int (2) -Modifique el nombre de la tabla empleado a nuevoempleado cambiar el nombre de empleado de la tabla a nuevo empleado -Eliminar empleado de mesa empleado de la mesa desplegable -Agregar id como clave principal alterar tabla empleado agregar ID de clave primaria -Eliminar la clave primaria de la tabla alterar clave primaria de soltar empleado de tabla -Investigación SELECCIONAR * DE empleado; -Insertar una sola asignación de par clave-valor de datos INSERTAR EN el conjunto de empleados name = 'Fatty' -Insertar una sola pieza de datos INSERTAR EN EL empleado (nombre, sexo, edad, departamento, salario) VALOR (1,1,1,1,1); -Insertar múltiples datos INSERTAR EN el empleado (nombre, sexo, edad, departamento, salario) VALOR (1,1,1,1,1), (2,2,2,2,2), (3,3,3,3,3); -Eliminar datos ELIMINAR DEL empleado DONDE id = 10 O id = 4 - Cambiar datos ACTUALIZAR el nombre del conjunto de empleados = '胖胖', departamento = '18' DONDE id = 13; ACTUALIZAR el nombre del conjunto de empleados = '胖胖', departamento = '18' DONDE id = 13; ACTUALIZAR el nombre del empleado SET = 'A fat', age = age + 1, department = 'My life' WHERE id = 13; - Mesa vacía TABLA TRUNCADA empleado --Compruebe --distinct: nombre deduplicado SELECCIONE un nombre distinto del empleado SELECCIONE * del nombre del empleado como 'n%' SELECCIONE * del empleado DONDE JS ENTRE 80 Y 100 SELECCIONE * del empleado DONDE ESTÁ JS (80,89,100) SELECCIONE * del empleado DONDE ESTÁ JS (80,89,100) ORDENAR POR ID DESC SELECCIONE * del empleado DONDE ESTÁ JS (80,89,100) ORDENAR POR ID DESC SELECCIONE el nombre del empleado GRUPO POR nombre SELECCIONE el nombre, SUMA (JS) del empleado GRUPO POR nombre SELECCIONE el nombre, SUMA (Diango) del empleado GRUPO POR nombre QUE TENGA SUMA (Django)> 150 SELECCIONE el nombre, SUM (JS) / COUNT (nombre) del empleado GROUP BY name - 求 JS 平均值 SELECCIONE el nombre, AVG (JS) del empleado GRUPO POR nombre: encuentre el promedio de JS SELECCIONE el nombre, MAX (JS) del empleado GROUP BY name - 求 JS 最高 分 SELECCIONE el nombre, MIN (JS) del empleado GRUPO POR nombre: encuentre el puntaje más bajo de JS - Mesa principal CREAR TABLA Techer ( id TINYINT PRIMARY KEY auto_increment, nombre VARCHAR (25), edad TINYINT, ) MOTOR = INNODB; --Cree una clave externa para la subtabla Nota: la clave externa y los tipos de datos subjetivos deben ser consistentes - El significado de las restricciones de clave externa en subtablas: los datos asociados con claves externas en subtablas y tablas principales no se pueden eliminar CREAR TABLA Estudiante ( id TINYINT PRIMARY KEY auto_increment, nombre VARCHAR (25), género booleano, edad TINYINT, id_cargador TINTINT, FROM KEY (charger_id) REFERENCIAS Techer (id) -crear una clave externa de subtabla ) MOTOR = INNODB; -No se agrega ninguna clave foránea al crear la tabla. La siguiente instrucción se puede ejecutar para agregar una clave foránea llamada abc ALTERAR TABLA Estudiante AGREGAR RESTRICCIÓN abc LLAVE EXTRANJERA (charger_id) REFERENCIAS Techer (id) --Eliminar claves foráneas ALTERAR TABLA CLAVE EXTRANJERA DE ESTUDIANTES abc -Cascade eliminar y SET NULL - AL ELIMINAR CASCADA: cuando se eliminan los datos de la tabla principal, los datos asociados de la tabla esclava también se eliminarán juntos CREAR TABLA Estudiante ( id TINYINT PRIMARY KEY auto_increment, nombre VARCHAR (25), género booleano, edad TINYINT, id_cargador TINTINT, DESDE CLAVE (charger_id) REFERENCIAS Techer (id) EN ELIMINAR CASCADA - Crear una clave externa subtable ) MOTOR = INNODB; -Cascade eliminar y SET NULL - SET NULL CREAR TABLA Estudiante ( id TINYINT PRIMARY KEY auto_increment, nombre VARCHAR (25), género booleano, edad TINYINT, id_cargador TINTINT, DESDE LA CLAVE (charger_id) REFERENCIAS Techer (id) EN ELIMINAR SET NULL: crea una clave foránea para la subtabla ) MOTOR = INNODB; - Consulta de múltiples tablas -Consulta de conexión: unión interna unión interna, unión externa unión izquierda unión derecha unión completa unión completa --Subquery - Consulta de conexión interna SELECCIONE * DESDE Techer T, Estudiante S DONDE T.id = S.charger_id SELECCIONAR * DESDE Techer T INNER ÚNASE Estudiante S EN T.id = S.charger_id - Unión externa izquierda: tome Techer como la tabla principal, muestre si coincide y muestre NULL si no puede coincidir SELECCIONAR * DESDE Techer T IZQUIERDA UNIRSE Al estudiante S EN T.id = S.charger_id - Unión externa derecha: el alumno es la tabla principal, se puede mostrar si se puede hacer coincidir, y se puede mostrar si no se puede hacer coincidir. SELECCIONAR * DESDE Techer T DERECHA UNIRSE Estudiante S EN T.id = S.charger_id - Conexión completa externa: UNION eliminará los datos duplicados SELECCIONAR * DESDE Techer T IZQUIERDA UNIRSE Estudiante S EN T.id = S.charger_id UNIÓN SELECCIONAR * DESDE Techer T DERECHA UNIRSE Estudiante S EN T.id = S.charger_id SELECCIONAR * DESDE Techer T IZQUIERDA UNIRSE Estudiante S EN T.id = S.charger_id UNIÓN TODOS SELECCIONAR * DESDE Techer T DERECHA UNIRSE Estudiante S EN T.id = S.charger_id - Consulta compuesta SELECCIONAR * DE empleado, departamento DONDE employee.dep_id = departamento dep_id ORDENAR POR ASC Y employee.age> 25; --Subquery SELECCIONAR * DESDE el empleado DONDE dep_id IN (SELECCIONAR dep_id DEL departamento) --Encuesta con la palabra clave existe - La consulta interna no devuelve el registro de la consulta, pero devuelve un Verdadero o Falso, la declaración externa se consulta cuando se devuelve True y la declaración externa no se consulta cuando se devuelve False SELECCIONAR * DEL empleado DONDE EXISTE (SELECCIONAR nombre_depto DEL departamento DONDE_dept_id = 203) - Índice - La creación y el mantenimiento de índices consume mucho tiempo y espacio en disco, pero aumentará la velocidad de las consultas Prueba CREATE TABLE ( id INT PRIMARY KEY auto_increment, nombre VARCHAR (25), reanudar TEXTO, saary INT DELETE 1000-valor predeterminado 1000 ); -Agregue un índice único al campo de nombre de la tabla ALTER TABLE test MODIFY name VARCHAR (20) UNIQUE --Cree un nombre de índice común (index_name) CREATE TABLE emp ( id INT PRIMARY KEY auto_increment, nombre VARCHAR (25), ÍNDICE index_name (nombre) ); --Cree un índice de varias columnas llamado (index_name_resume) CREATE TABLE emp ( id INT PRIMARY KEY auto_increment, nombre VARCHAR (25), reanudar VARCHAR (20) ÍNDICE index_name_resume (nombre, currículum) ); --Agregar un índice (en una tabla existente) CREAR ÍNDICE ÚNICO index_name ON emp (id) -Inicio de procedimiento almacenado CREATE TA Ind (id int, nombre varchar (20)); delimitador $$ Procedimiento CREATE autoinsert () EMPEZAR declaro i int default 1; mientras que (1 <500000) do insertar en valores Ind (i, 'lin') establecer i = i + 1 terminar mientras FIN $$ delimitador - Función de llamada llamar a autoinsert () - Fin del procedimiento almacenado CREAR TEST TABLE (id int, name varchar (20)) --Abre cosas iniciar transacción --Enviar cosas cometer -Rollback Retroceder --savepoint: especifica que regrese a una determinada posición