PDF de programación - Chuleta MySQL

Imágen de pdf Chuleta MySQL

Chuleta MySQLgráfica de visualizaciones

Publicado el 24 de Junio del 2020
6.735 visualizaciones desde el 24 de Junio del 2020
65,1 KB
4 paginas
Creado hace 16a (29/02/2008)
CHULETA MySQL v2.3. Marzo2008. Felipe J. Romero

DDL

Línea de comandos:

Iniciar:
mysql -u user -p

Ejecutar un fichero bach.

mysql -u user -p < batch_file

Crear una copia de seguridad de

una BD.

mysqldump --opt -u username -p database
> database_backup.sql

mysqldump --opt --all-databases >
all_backup.sql

Mostrar Información de Tablas y BD
Seleccionar una BD:
USE database;
Listar las BD existentes:
SHOW DATABASES;
Mostrar las tablas de una BD:
SHOW TABLES;
Mostrar/Describir el formato/diseño de
una tabla:
DESCRIBE table;

Crear BD y Tablas

Crear una BD:
CREATE DATABASE db_name;
Crear una tabla:
cREATE TABLE pet (

name VARCHAR(20) NOT NULL AUTO_INCREMENT
PRIMARY KEY,
sex CHAR(1),
birth DATE,
age INT(2),
raza ENUM('salchicha','pastor alemán')
);

character_set_server='latin1';

Cambiar la colación en el MySQL
(global):
SET GLOBAL
collation_server='latin1_spanish_ci';

Crear una BD con un juego de caracteres
y colación determinados:

Cambiar Sistema de almacenamiento
ALTER TABLE clientes
ENGINE MyISAM;

Insertar/Modificar/eliminar

campos:

Añadir una columna:
ALTER TABLE clientes
ADD COLUMN direccion VARCHAR(40)
AFTER apellido2;
Modificar una columna:
ALTER TABLE clientes
CHANGE dni nif VARCHAR(10);
Eliminar una columna:
ALTER TABLE clientes
DROP COLUMN dni;

CREATE DATABASE hipermercado
CHARACTER SET latin1
COLLATE latin1_spanish_ci;
Modificar una BD con un juego de
caracteres y colación determinados:
ALTER DATABASE hipermercado
CHARACTER SET latin1
COLLATE latin1_spanish_ci;

Borrar BD, Tablas y campos

Eliminar DB:
DROP DATABASE nombre_bd;
Eliminar TABLA:
DROP TABLA nombre_tabla;
Eliminar un campo:

VARIABLES

Juegos de Caracteres Y colaciones:
Consultar juego de caracteres:
SHOW GLOBAL
'character_set_server';
Consultar colación:
SHOW

'collation_server';
Cambiar juego de caracteres en MySQL
(Global):
SET

VARIABLES



LIKE



GLOBAL



LIKE

GLOBAL



1 de 4

ALTER TABLE tbl DROP COLUMN col;

Cambiar Nombre a Tabla y a Campo.
RENAME TABLE clientes TO clientes2009;
ALTER TABLE clientes
CHANGE dni nif VARCHAR(10);

Crear/Eliminar llave primaria y

//Crear Llave primaria

ajena.

ALTER TABLE jugadores
ADD PRIMARY KEY (id_equipo);
//Crear Llave ajena
ALTER TABLE jugadores
ADD FOREIGN KEY (id_equipo)
REFERENCES equipo(id_equipo);
//Eliminar Llave primaria.
ALTER TABLE nombretabla
DROP PRIMARY KEY;

//Eliminar llave ajena.
ALTER TABLE nombretabla
DROP FOREIGN KEY nombre_fk;

DML

TRABAJAR CON

DATOS

Cargar/Insertar datos

Cargar datos de un fichero TABULADO:

LOAD DATA LOCAL INFILE "fichero.txt"
INTO TABLE table_name;
(Use \n for NULL)
Insertar un registro:
INSERT INTO clientes

VALUES ('Pío Pérez', 'Gran Plaza 12',

'2002-08-31',NULL);

Reloading a new data set into existing
table:

mysql> SET AUTOCOMMIT=1; # used for
quick recreation of table
mysql> DELETE FROM pet;

CHULETA MySQL v2.3. Marzo2008. Felipe J. Romero

mysql> LOAD DATA LOCAL INFILE
"infile.txt" INTO TABLE table;

Actualizar datos.

UPDATE clientes
SET dni = '2603232'
WHERE nombre ="Pedro" AND ape1='Pérez';

WHERE (Porcentaje>50.0);

Suma:
SELECT SUM(Superficie) AS
superficietotal
FROM paises;

Union

Eliminar Datos

DELETE FROM clientes
where sexo='v';
//Borra todos los datos.
TRUNCATE TABLE clientes;

DML

CONSULTAS

Funciones

Valor máximo y mínimo:
SELECT MAX(edad) AS edad_maxima
FROM alumnos;

SELECT MIN(edad) AS edad_mInima
FROM alumnos;
Contar columnas:

SELECT COUNT(*)
FROM clientes;
//Media: media de los porcentajes de
aquellas lenguas cuyo porcentaje supere
el 50%.
SELECT AVG(Porcentaje) AS
mediaporcentaje
FROM lenguas

2 de 4

//Crea una unión con las filas de las
dos tablas (han de coincidir las
columnas).

TABLE jugadores_nuevos
UNION ALL
TABLE jugadores_antiguos
ORDER BY nombre_jugador;

//Unión de select:
SELECT nombre_alumn
FROM curso0708
WHERE ciclo='ESI'
UNION
SELECT nombre_alumn
FROM curso0809
WHERE ciclo='ESI';

Múltiples tablas

Producto cartesiano
SELECT nombre_equipo, COUNT(id_jugador)
FROM jugadores, equipos
WHERE
jugadores.id_equipo=equipos.id_equipo;

INNER JOIN
//Similar al producto cartesiano, pero más
rápido si las columnas de emparejamiento
están indexadas.

SELECT nombre_equipo, COUNT(id_jugador)
FROM jugadores INNER JOIN equipos
ON jugadores.id_equipo=equipos.id_equipo;

CHULETA MySQL v2.3. Marzo2008. Felipe J. Romero

LEFT JOIN
//Aparecen todos los registros de la tabla
izquierda (todos los jugadores), aunque no
se correspondan con ningún registro de la
derecha (aunque no juegen en ningún equipo).

SELECT *
FROM jugadores LEFT JOIN equipos
ON jugadores.id_equipo = equipos.id_equipo;

RIGHT JOIN
//Aparecen todos los registros de la tabla
derecha (todos los equipos), aunque no se
correspondan con ningún registro de la
izquierda (aunque no tengan ningún jugador).

SELECT *
FROM empleados RIGHT JOIN oficinas
ON empleados.oficina = oficinas.oficina;

Subconsultas con ANY, IN y SOME

//ANY o IN (ALIAS): es true si la
condición se cumple con cualquiera de
los valores de la subconsulta.
SELECT s1
FROM t1
WHERE s1 > ANY (SELECT s1 FROM t2);

//ALL: es true si la condición se cumple
con todos los valores devueltos por la
subconsulta.
SELECT s1
FROM t1
WHERE s1 > ALL (SELECT s1 FROM t2);

Subconsultas con EXISTS y NOT

Seleccionar Registros distintos

EXISTS

(DISTINCT)

SELECT (general):
SELECT dni,nombre
FROM clientes
WHERE dni='22234432' OR 'dni=25343234';

SELECT * FROM pedidos;
Listado de todos los nombres de clientes
distintos:
SELECT DISTINCT nombre FROM clientes;

Subconsultas

SELECT nombre_equipo
FROM equipos
WHERE (id_equipo=
(SELECT DISTINCT id_equipo
FROM jugadores
WHERE numero_goles>0)
);

//Qué país tiene una o más ciudades.
SELECT DISTINCT nombre
FROM paises
WHERE EXISTS
( SELECT *
FROM ciudades
WHERE
ciudades.Cod_pais=paises.Cod_pais);
//Qué país NO tiene una o más ciudades.
SELECT DISTINCT nombre
FROM paises
WHERE NOT EXISTS
( SELECT *
FROM ciudades
WHERE
ciudades.Cod_pais=paises.Cod_pais);

Subconsultas en FROM

//Es obligatorio el AS dentro de la

3 de 4

subconsulta.
SELECT AVG(porcentmayor)
FROM (SELECT Porcentaje AS porcentmayor
FROM lenguas
WHERE Porcentaje>50.0);

Ordenar Registros

Ordenar:

SELECT nombre, edad FROM amigos ORDER BY
edad DESC;

Cálculos con fechas:

SELECT CURRENT_DATE,
(YEAR(CURRENT_DATE)-YEAR(fechanac)) AS
time_diff
FROM amigos;

Selección con caracteres comodín:
SELECT *
FROM clientes
WHERE nombre LIKE "Jua%";

Agrupamientos (group by)

SELECT id_equipo, COUNT(*)
FROM jugadores
GROUP BY id_equipo;

Condiciones con HAVING

SELECT id_proveedor, MAX(precio_compra)
FROM compras
GROUP BY id_proveedor
HAVING MAX(precio_compra)>100;

CHULETA MySQL v2.3. Marzo2008. Felipe J. Romero

TIPOS DE

DATOS

TINYINT
SMALLINT

MEDIUMINT

INT

INTEGER
BIGINT

FLOAT(X)

FLOAT
DOUBLE

DOUBLE PRECISION

REAL

DECIMAL(M,D)

NUMERIC(M,D)

1 byte
2 bytes
3 bytes
4 bytes
4 bytes
8 bytes

4 ú 8 bytes

4 bytes
8 bytes
8 bytes
8 bytes

M+2 bytes sí D > 0,
M+1 bytes sí D = 0
M+2 bytes if D > 0,
M+1 bytes if D = 0

Date

DateTime
TimeStamp

Time
Year

Char(n)

FECHA (3 bytes)

FECHA Y HORA (8bytes)
FECHA Y HORA (4bytes)

HORA (3bytes)

AÑO (1901-2155) (1byte)

Longitud fija.

De 0 a 255 caract. (n

VarChar(n)

TinyText
TinyBlob

Text
Blob

MediumText
MediumBlob
LongText
LongBlob

bytes)

Longitud variable.

De 0 a 255 caracteres.

(n+1 bytes)

Máx 255 char.
Máx. 255 bytes

(binarios).

Máx. 65535 char.

Máx. 65535 bytes (bin).

Máx. 16 Mill. char.

Máx 16 Mill. bytes (bin)

Máx 4294 mill. Char.
Máx 4294 mill. Bytes

(bin).

Enum

Set

Hasta 65535 valores.

Fruta ENUM

('limón','naranja');

puede contener ninguno, uno ó
varios valores de una lista.

(Máx 64 valores).

4 de 4
  • Links de descarga
http://lwp-l.com/pdf17824

Comentarios de: Chuleta MySQL (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad