Comandos mysql

Comandos mysql

Manejo de Fechas:

-- Obtener fecha y hora actual

SELECT NOW(), CURDATE(), CURTIME();

-- Agregar días, meses, años

SELECT DATE_ADD(NOW(), INTERVAL 7 DAY);

SELECT DATE_SUB(NOW(), INTERVAL 1 MONTH);

-- Diferencia entre fechas

SELECT DATEDIFF('2025-06-01', '2025-05-24');

-- Formatear fechas

SELECT DATE_FORMAT(NOW(), '%Y-%m-%d %H:%i:%s');



Triggers (Disparadores):


CREATE TRIGGER nombre_trigger

AFTER INSERT ON tabla

FOR EACH ROW

BEGIN

-- lógica

INSERT INTO auditoria (evento) VALUES ('Insert realizado');

END;

 

Subconsultas:


 -- Subconsulta en SELECT

SELECT nombre FROM empleados

WHERE departamento_id = (SELECT id FROM departamentos WHERE nombre = 'Ventas');

-- Subconsulta en FROM

SELECT AVG(salario) FROM (

SELECT salario FROM empleados WHERE departamento_id = 1

) AS sub;

-- Subconsulta con EXISTS

SELECT nombre FROM empleados e

WHERE EXISTS (

SELECT 1 FROM proyectos p WHERE p.empleado_id = e.id

);


Manejo de Cadenas:

 -- Concatenar

SELECT CONCAT(nombre, ' ', apellido) FROM empleados;

-- Buscar dentro de una cadena

SELECT * FROM productos WHERE nombre LIKE '%telefono%';

-- Longitud, mayúsculas, minúsculas

SELECT LENGTH(nombre), UPPER(nombre), LOWER(nombre) FROM empleados;

-- Subcadenas y reemplazos

SELECT SUBSTRING(nombre, 1, 3), REPLACE(nombre, 'a', 'x') FROM empleados;



Tipos ENUM y SET:


 -- ENUM: valor único entre opciones

CREATE TABLE ejemplo_enum (

estado ENUM('activo', 'inactivo', 'pendiente')

);

-- SET: múltiples valores de una lista

CREATE TABLE ejemplo_set (

permisos SET('lectura', 'escritura', 'ejecución')

);



Tipo BLOB (Binary Large Object):

CREATE TABLE archivos (

id INT AUTO_INCREMENT PRIMARY KEY,

nombre VARCHAR(100),

datos BLOB

);



Crear Tabla a partir de Otra:


 -- Crear nueva tabla con estructura de otra

CREATE TABLE nueva_tabla LIKE tabla_existente;

-- Crear nueva tabla con datos seleccionados

CREATE TABLE empleados_ventas AS

SELECT * FROM empleados WHERE departamento = 'Ventas';



Manejo en Cascada (ON DELETE / ON UPDATE CASCADE):


CREATE TABLE pedidos (

id INT PRIMARY KEY,

cliente_id INT,

FOREIGN KEY (cliente_id) REFERENCES clientes(id)

ON DELETE CASCADE

ON UPDATE CASCADE

);

 

Administración de Usuarios (MySQL): 


-- Crear usuario

CREATE USER 'usuario'@'localhost' IDENTIFIED BY 'contraseña';

-- Dar permisos

GRANT SELECT, INSERT, UPDATE ON basedatos.* TO 'usuario'@'localhost';

-- Revocar permisos

REVOKE UPDATE ON basedatos.* FROM 'usuario'@'localhost';

-- Eliminar usuario

DROP USER 'usuario'@'localhost';

--ver usuarios

SELECT user, host FROM mysql user;  //hay que poner el "." despues de mysql

¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar
Utilizamos cookies para permitir un correcto funcionamiento y seguro en nuestra página web, y para ofrecer la mejor experiencia posible al usuario.

Configuración avanzada

You can customize your cookie preferences here. Enable or disable the following categories and save your selection.