Seleccionar una base de datos:

mysql> USE database;

Listar las base de datos:

mysql> SHOW DATABASES;

Listar las tablas en una base de datos:

mysql> SHOW TABLES;

Describe el formato de la tabla:

mysql> DESCRIBE table;

Crear una base de datos:

mysql> CREATE DATABASE db_name;

Crear una tabla:

mysql> CREATE TABLE table_name (field1_name TYPE(SIZE), field2_name TYPE(SIZE));
ejemplo: mysql> CREATE TABLE pet (name VARCHAR(20), sex CHAR(1), birth DATE);

Cargar datos desde un archivo de texto delimitados por tabulación a una tabla:

mysql> LOAD DATA LOCAL INFILE "infile.txt" INTO TABLE table_name;
(Utiliza \\n para datos NULL)

Insertar una fila a a vez:

mysql> INSERT INTO table_name VALUES (\'MyName\', \'MyOwner\', \'2002-08-31\');
(Utiliza NULL para datos NULL)

Recibir información (general):

mysql> SELECT from_columns FROM table WHERE conditions;
Todos los valores: SELECT * FROM table;
Algunos valores: SELECT * FROM table WHERE rec_name = "value";
Múltiples criterios: SELECT * FROM TABLE WHERE rec1 = "value1" AND rec2 = "value2";

Volver a cargar datos nuevos dentro de una tabla existente:

mysql> SET AUTOCOMMIT=1; # Utilizado para una recreación rápida de la tabla
mysql> DELETE FROM pet;
mysql> LOAD DATA LOCAL INFILE "infile.txt" INTO TABLE table;

Reparar todos los registros con cierto valor:

mysql> UPDATE table SET column_name = "new_value" WHERE record_name = "value";

Seleccionar columnas específicas:

mysql> SELECT column_name FROM table;

Recibir una única salida de registros:

mysql> SELECT DISTINCT column_name FROM table;

Ordenar:

mysql> SELECT col1, col2 FROM table ORDER BY col2;
Al revés: SELECT col1, col2 FROM table ORDER BY col2 DESC;

Cálculos con fechas:

mysql> SELECT CURRENT_DATE, (YEAR(CURRENT_DATE)-YEAR(date_col)) AS time_diff [FROM table];
MONTH(some_date) extracts the month value and DAYOFMONTH() extracts day.

Coincidencias con patrones (búsquedas):

mysql> SELECT * FROM table WHERE rec LIKE "blah%";
(% es un comodín)
Buscar valores de 5 caracteres: SELECT * FROM table WHERE rec like "_____";
(_ es un simple caracter)

Coincidencias con expresiones regulares:

mysql> SELECT * FROM table WHERE rec RLIKE "^b$";
(. para caracteres, […] para una clase de caracteres, * para 0 más instancias
^ para el inicio, {n} para repetir n veces, y $ para el fin)
(RLIKE o REGEXP)
Para forzar la sensiblidad de mayúsculas y minúsculas utiliza «REGEXP BINARY»

Contar filas:

mysql> SELECT COUNT(*) FROM table;

Agrupar con contador:

mysql> SELECT owner, COUNT(*) FROM table GROUP BY owner;

Seleccionar desde múltiples tablas:

(Ejemplo)
mysql> SELECT pet.name, comment FROM pet, event WHERE pet.name = event.name;
(Puedes juntar una tabla a si misma para ahcer comparaciones utilizando \’AS\’)

Base de datos seleccionada actualmente:

mysql> SELECT DATABASE();

Valor máximo:

mysql> SELECT MAX(col_name) AS label FROM table;

Filas auto-incremetables:

mysql> CREATE TABLE table (number INT NOT NULL AUTO_INCREMENT, name CHAR(10) NOT NULL);
mysql> INSERT INTO table (name) VALUES ("tom"),("dick"),("harry");

Agregar un acolumna a todas las tablas creadas actualmente:

mysql> ALTER TABLE tbl ADD COLUMN [column_create syntax] AFTER col_name;

Eliminar una columna:

mysql> ALTER TABLE tbl DROP COLUMN col;
(La sintaxis completa de ALTER TABLE está disponible en mysql.com.)

Modo «Batch»:

# mysql -u user -p < batch_file
(Utiliza -t para ver la tablas más amigables y -vvv para ver los comandos.)
Alternativamente: mysql> source batch_file;

Hacer un respaldo de una base de datos con mysqldump:

# mysqldump --opt -u username -p database > database_backup.sql
(Utilza \’mysqldump –opt –all-databases > all_backup.sql\’ para respaldar todo.)
(Más información en la documentación de MySQL.)

Vía: Neal Parikh