COMANDOS MYSQL
1. Descargar xamp
- Primero activar los servicios de xamp (apache, mysql)
- Digitar cmd para abrir la consola
2. Abrir MariaBD
- cd/xamppp/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
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;
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;
Agregar un campo al principio 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 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:/xamppp/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ónselect idlibro,Nombre from libro;
select Titulo,precio from libro;
• Consultar con condicional
comandowhere
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';
Contar cantidad de cosas
Sintaxis: select count(*) from libro;
Contar cantidad de cosas con un mensaje
select count(*)'Cantidad de libros' from libro;
Sumar cosas
select sum( precio)'Valor total' from libro;
Hallar el maximo
select max( precio)'El libro mas caro es:' from libro;
Hallar minimo
select mim( numpg)'Numero de paginas minimo:' from libro;
hallar el promedio
select avg(precio)'Valor promedio de un libro' from libro;
Modificar o actualizar datos o registro
Cambiar o actualizar el titulo del libro redes por redes y comunicaciones
update libro set titulo='Redes y Comunicaciones' where id_libro='l07';
Crear nuevos espacios en la tabla
alter table libro add cantidad int not null after numpg;
alter table libro add vtotal float not null after precio;
Llenar datos nuevos
update libro set Cantidad=5 where id_libro='l01';
Actualizar el campo de valor total
update libro set vtotal=cantidad*precio;
Precaucion: Si se actulizan o modifican todos los campos de una tabla No se requiere de condiciones, en caso contrariom de modificar o actualizar campos en especificos es necesario tener la condicion.
Eliminar registros o informacion
delete from libro where id_libro='l07';
Ordenar de forma ascendente
select * from libro order by titulo;
Ordenar de forma descendente
select * from libro order by titulo desc;
Ordenar de forma ascendente numpg
select * from libro order by numpg asc;
Ordenar de forma descendente numpg
select * from libro order by numpg desc;
Comando join
Relacion entre varias tablas
select*from tabla1 inner join tabla2 on tabla1.id=tabla2.id inner join tabla3 on tabla2.id=tabla3.id2;
select libro.id_libro,libro.titulo,autor.codaut,autor.nombre from libro inner join liautedi on libro.id_libro=lia
utedi.id_libro1 inner join autor on liautedi.codaut1=autor.codaut;
Relacion para que no aparezca repetido
select distinct libro.id_libro,libro.titulo,autor.codaut,autor.nombre from libro inner join liautedi on libro.id_
libro=liautedi.id_libro1 inner join autor on liautedi.codaut1=autor.codaut;
En el siguiente txt estan los codigos usados en clase
AGRUPAR INFORMACION
Comando Group by
Sintaxis select * from nombretabla group by nombrecampo;
Ejemplo: select * from estudiante group by nom_E;
Usando las funciones (max,min,sum,avg,count) .
Visualizar las cantidades de visitantes por ciudad
Análisis
1. Que se desea consultar
2. Campo en el que se aplica la función
3. Campo por el cual va a agrupar
4. Comando
---------------------------------------------------------------------------------------------
Sintaxis
Select nombrecampo(s), función(campofuncion) as nombredeseado from nombretabla group by nombrecampo;
select ciudad ,count(ciudad) as 'cantidad visitantes' from visitantes group by ciudad;
• Visualizar el total comprado por ciudad
Analisis
1. Que se desea consultar Total comprado por Ciudad
2. Campo en el que se aplica la funcion montocompra
3. Campo por el cual va a agrupar Ciudad
4. Comando y funcion a utilizar Select - group by :
Funcion Sum
Sintaxis
select
ciudad ,sum(montocompra) as 'total compra por ciudad' from visitantes group by ciudad;
---------------------------------------------------------------------------------------------
• Visualizar el monto de compra por sexo
Análisis
1. Que se desea consultar Suma compra por Sexo
2. Campo en el que se aplica la funcion montocompra
3. Campo por el cual va a agrupar Sexo
4. Comando Select-group by
funcion sum
Sintaxis
Select sexo ,sum(montocompra) as 'total compra por sexo' from visitantes group by sexo;
---------------------------------------------------------------------------------------------
• Visualizar las ciudades a las que van más de dos visitantes
Nota: cuando utilizamos group by y se manejan condiciones estas no funcionan con where sino con la opción having
Analisis
1. Que se desea consultar Ciudad
2. Campo en el que se aplica la funcion Ciudad
3. Campo por el cual va a agrupar Ciudad
4. Comando condicion:
Cantidad >2 Select group by :
funcion Count- Where
Sintaxis
Select ciudad ,count(ciudad) as 'cantidad de visitantes' from visitantes group by ciudad having count(ciudad)>2;
---------------------------------------------------------------------------------------------
• Calcular el valor promedio de monto compra agrupados por ciudad y sexo
Nota: cuando utilizamos group by y se manejan condiciones estas no funcionan con where sino con la opción having
Analisis
1. Que se desea consultar Promedio de compra por Ciudad y Sexo
2. Campo en el que se aplica la funcion Montocompra
3. Campo por el cual va a agrupar Ciudad y sexo
4. Comando Select - group by :
Funcion AVG
Sintaxis
Select ciudad,sexo ,avg(montocompra) as 'promedio de compra' from visitantes group by ciudad, sexo;
• visualizar el monto compra por ciudad mayores a 5 millones
Nota: cuando utilizamos group by y se manejan condiciones estas no funcionan con where sino con la opción having
Analisis
1. Que se desea consultar Ciudad
2. Campo en el que se aplica la funcion Montocompra
3. Campo por el cual va a agrupar Ciudad
4. Comando condicion: suma >5 Millones
Select-group by :
funcion Sum- having
Sintaxis
Select ciudad, sum(montocompra) as 'Mayores_a_5000000' from visitantes group by ciudad having sum(montocompra)>5000000;
---------------------------------------------------------------------------------------------
VISTAS
Se utiliza para crear tablas temporales Comando View View
Sintaxis:
create view nombre de la vista;
Ejemplo: crear una vista con los nombres que terminan en A
create view visitantesa as select * from visitantes where nombre like '%a';
---------------------------------------------------------------------------------------------
Nota: se crea una tabla tal cual es la original, pero con la información consultada Inserta un nuevo visitante
insert into visitantes(nombre,ciudad,sexo,montocompra) values('Ana Maria Guerrero Guasca','cartagena','femenino',5000000); Eliminar una vista Drop view nombredelavista; Eliminar la vista visitantesa Drop view visitantesa;
Copia de seguridad
C:\xampp\mysql\bin>mysqldump -B -uroot -p --routines matricula>c:/xampp/matricula2.sql