Comandos MySQL
Comandos mysql
1. Descargar xamp
- Primero activar los servicios de xamp (apache, mysql)
- Digitar cmd para abrir la consola
2. Abrir MariaBD
- cd/xampp/mysql/bin
- mysql -uroot -p
3. redirigirá toda la salida de los comandos SQL
- tee c:/xampp/clase1msql.txt
-show databases; (mostrar la configuración)
- El show nos sirve para mostrar
2. Comando para crear una BD
- create database (Nombre de la BD);
3. Comando para abrir la BD
- use (nombre de la BD);
4. Visualizar tablas
- show tables;
Drop: Eliminar una base de datos
5. Crear tablas
- create table nombre_tabla
(campo1 tipo(tamaño) nulo o no primary key,
campo2 tipo(tamaño) nulo o no,
campoN tipo(tamaño) nulo o no);
6. comandos para visualizar la estructura de una tabla
- Describe nombre_de la_tabla;
- Si estas usando la base de datos: show columns from nombretabla;
- Si no estas usando la base de datos: - show columns from nombreBD. Nomtabla;
Exit ( para salir)
7. hacer la copia de seguridad
- mysqldump -B -uroot -p biblioteca>c:/xampp/biblioteca.sql
Eliminar una clave primaria
Comando Drop
- alter table nombretabla drop primary key;
Definir nuevamente la clave primaria a una tabla
Comando modify
- alter table nombretabla modify nombre_de_campo tipo(tamaño) not null primary key;
ejemplo: alter table libro modify Idlibro varchar(10) not null primary key;
8. Agregar un campo al final de la tabla
comando add
- alter table nombreTabla add nombre_nuevo_campo tipo (tamaño) not null;
alter table libro add Cantidad int (3)not null;
Agregar un campo al principio de la tabla
Comando first
- alter table nombretabla add nombre_de_campo tipo(tamaño) not null first;
alter table libro add serial varchar(15) not null first;
Agregar un campo después de otro según la necesidad
Comando after
- alter table nombre_tabla add nombrede_campo tipo(tamaño) no null after nombrede_campo que va a qudar antes del nuevo campo;
alter table libro add are varchar (20) not null after titulo;
Eliminar campos de una tabla
Comando Drop
- alter table nombretabla drop nombre_de_campo;
alter table libro drop serial;
Cambiar el nombre de un campo
Comando change
- alter table nombretabla change nombre_campo_actual nuevo_nombre tipo(tamaño) not null;
alter table libro change Titulo Nombre varchar(50) not null;
Visualizar como está creada una tabla
Comando Show
- show create table nombretabla;
show create table libro;
Cambiar el nombre de una tabla
Comando Rename
- alter table nombretabla rename to nuevonombretabla;
alter table libro rename to obra;
Eliminar una tabla
Comando Drop
- drop table nombretabla;
drop table autor;
Insertar información en una tabla
Comando Insert
insert into nombretabla(campo1,campo2,campo3,…campon) values(dato1,dato2,dato3,…daton);
insert into libro(Idlibro,Titulo,Area,Cantidad,Nropaginas,Precio) values('001','A','Informatica',50,50,4000);
Mostrar la información de la tabla
select * from nombre_tabla;
Eliminar base de datos
drop database prueba;
Recuperar la base de datos
source c:/xampp/prueba.sql
Consultar o visualizar información
comando
select
sintaxis
select * from nombretabla;
Ejemplo:
Select * from libro;
Consultar uno o varios campos de una tabla
sintaxis:
select campo1,campo2,campo3,…campon from nombretabla;
Ejemplo: Visualizar el codigo del libro y su descripción
select idlibro,Nombre from libro;
select Titulo,precio from libro;
• Consultar con condicional
comando where
sintaxis:
select todos o campos_especificos from nombretabla where campo con condicion;
Ejemplo:
Visualizar la informacion del libro L01
select * from libro where id_libro='L01';
• Visualizar la información de los libros 001, 002, 003.
Condición: codigo=001 o codigo=002 or codigo=003
sintaxis:
select * from libro where idlibro='001' or idlibro='002' or idlibro='003'
• Visualizar la información de los libros del 001 al 005.
Condición: codigo>=001 y codigo<=005
sintaxis:
select * from libro where idlibro>='001' and idlibro<='005';
• Reemplazar el comando or por el comando in
Visualizar la información de los libros 001, 002, 003.
Condición: codigo=001 o codigo=002 or codigo=003
sintaxis:
select * from libro where idlibro in('001','002','003');
• Reemplazar el comando and por el comando between cuando se manejan intervalos
Condición: codigo del Libro entre 001 y 006
select * from libro where idlibro between '001' and '006';
El comando like sirve para buscar coincidencias o búsquedas no precisas.
Este comando tiene tres variables
- Like '% a': Que termina en la letra a
- Like 'a%': Que inicia en la letra a
- Like '%a%': Que en alguna parte contenga la a
-- Ejemplo para visualizar la información de los libros cuya área termina con la letra S:
select * from libro where area like '%S';
-- Ejemplo para visualizar la información de los libros que en el nombre del área incluyan la palabra datos:
select * from libro where area like '%datos%';
FUNCIONES BASICAS PARA REALIZAR CALCULOS
FUNCION--------------- DESCRIPCION
SUM ------------------ Suma o Total
MAX -------------------- Valor Máximo
MIN ------------------- Valor Mínimo
COUNT ---------------- Contar o cantidad
AVG ----------------- Promedio
Sintaxis
Select funcion(valor o campo) from nombretabla;
Ej: Cuantos libros hay en la librería
---------------------------------------------------------------------------------------------------
Función a Utilizar: Count
Sintaxis
select count(*) from libro;
select count(*) 'Cantidad de Libros' from libro;
---------------------------------------------------------------------------------------------------
Ej: Cual es el valor total de los libros que posee la librería
Función a Utilizar: Sum
Sintaxis
Select sum(precio) 'Valor Total' from libro;
---------------------------------------------------------------------------------------------------
Ej: Cual es el valor del libro más costoso que vende la librería
Función a Utilizar: Max
Sintaxis
Select max(precio) 'Libro Más Costoso' from libro;
---------------------------------------------------------------------------------------------------
Ej: Cuál es el número de páginas del libro más pequeño que vende la librería
Función a Utilizar: Min
Sintaxis
Select min(nropagina) 'Libro mas Pequeño' from libro;
---------------------------------------------------------------------------------------------------
Ej: hallar el valor promedio de los libros
Función a Utilizar: Avg
Sintaxis
Select Avg(precio) 'Valor promedio de un libro' from libro;
---------------------------------------------------------------------------------------------------
Modificar o actualizar datos o registros
Comando: Update
Sintaxis
update nombretabla set nombre del campo a actualizar='valor' condicion;
Cambiar o actualizar la descripción del libro Redes por Redes y Comunicaciones:
update libro set Titulo='Redes y Comunicaciones' where id_libro='L07';
---------------------------------------------------------------------------------------------------
INSERTAR EN LA TABLA LIBRO LOS CAMPOS CANTIDAD TIPO ENTERO Y VTOTAL
TIPO FLOAT
SINTAXIS:
alter table libro add cantidad int not null after Numpg;
alter table libro add vtotal float not null after precio;
---------------------------------------------------------------------------------------------------
ACTUALIZAR LA CANTIDAD DE LIBROS,COMENZANDO EN 5 PARA EL PRIMER LIBRO E INCREMENTAR DE 5 EN 5 PARA LOS DEMAS
SINTAXIS:
update libro set cantidad=5 where idlibro='L01';
---------------------------------------------------------------------------------------------------
ACTUALIZAR EL CAMPO VALOR TOTAL DE CADA LIBRO
SINTAXIS:
update libro set vtotal=cantidad*precio;
Precaución: realizar copia de seguridad antes de ejecutar la acción.
NOTA: Si se actualizan o modifican todos los campos de una tabla NO se requiere de condiciones, en caso contrario, De modificar o actualizar campos en específicos es necesario tener la condición.
---------------------------------------------------------------------------------------------------
ELIMINAR INFORMACIÓN O REGISTROS
COMANDO: Delete
SINTAXIS:
delete from tabla where condición;
---------------------------------------------------------------------------------------------------
ELIMINAR DE LA TABLA LIBRO,EL LIBRO DE REDES Y COMUNICACIONES
SINTAXIS:
Delete from libro where id_libro='L07';
delete from libro where Titulo='Redes y comunicaciones';
---------------------------------------------------------------------------------------------------
ORDENAR LA INFORMACION
COMANDO: Order by
SINTAXIS:
Select * from NombreTabla order by (campo a ordenar) tipo de ordenado ;
---------------------------------------------------------------------------------------------------
Ordenar la tabla LIBRO por la DESCRIPCION de los libros
Select * from libro order by descripcion;
NOTA: Si se desea ordenar ordenar de forma ascendente se agrega asc o descendente se agrega desc al final de la sintaxis.
Ejemplo: Ordenar la tabla libro por el Titulo de forma Ascendente-Descendente.
Ascendente:
select * from libro order by descripcion asc;
Descendente:
select * from libro order by descripcion desc;
Comando Join
El comando JOIN en mysql, sirve para combinar 2 o mas tablas según las designación de variables que queramos o necesitemos.
unión entre varias tablas, devuelve la información que encuentra esa unión (relación).
select * from tabla1 inner join tabla2 on tabla1.id=tabla2.id inner join tabla3 on tabla2.id=tabla3.id2;
select distinct libro.idlibro,libro.descripcion,autor.codautor,autor.nombre from libro inner join liautedi on libro.idlibro=liautedi.idlibro inner join autor on liautedi.codautor=autor.codautor;
Sintaxis:
select * from tabla1 inner join tabla2 on tabla1.id=tabla2.id inner join tabla3 on tabla2.id=tabla3.id2;
---------------------------------------------------------------------------------------------------
CONSULTAS RELACIONALES (Entre varias tablas)
Visualizar el codigo del libro, el nombre del libro, el codigo del autor y el nombre del autor con sus respectivos libros escritos.
Sintaxis:
select distinct libro.idlibro,libro.descripcion,autor.codautor,autor.nombre from libro inner join liautedi on libro.idlibro=liautedi.idlibro inner join autor on liautedi.codautor=autor.codautor into outfile 'c:/xampp/libroautorjoin.xls';
into outfile 'c:/xampp/libroautorjoin.xls'
El left join se utiliza para saber que registros no tienen correspondencia en otra tabla. Verifica de una tabla izquierda a una tabla derecha, si no encuentra coincidencias se genera una fila extra con todos los campos seteados a NULL.