Comandos MYSQL 2

Continuación de los comandos de MySql.

Plantilla

Análisis

1. Que se desea consultar y de que tablas?.

2. Que tablas se ven afectadas o involucradas?

3. Condición (es)

4. Como se relacionan las tablas?

5. Que comando se debe utilizar?

SINTAXIS

---------------------------------------------------------------------------------------------------------------------------------------------------------

CONSULTAS RELACIONALES ( entre varias tablas )

* Visualiza el código del libro, el nombre del libro, el código del autor  y el nombre del autor con sus respectivos libros escritos. 

Análisis

1. Que se desea consultar y de que tablas?.

  • libro.idlibro 
  • libro.descripcion 
  • autor.codautor 
  • autor.nombre     

2. Que tablas se ven afectadas o involucradas?

  • Libro
  • Autor
  • Liautedi    

3. Condición (es)

  • Ninguna  ( NA )

4. Como se relacionan las tablas?

  • libro.idlibro=liautedi.idlibro 
  • liautedi.codautor=autor.codautor     

5. Que comando se debe utilizar?    

Select 

SINTAXIS

select distinct libro.idlibro,libro.descripcion,autor.codautor,autor.nombre from libro,autor,liautedi where libro.idlibro=liautedi.idlibro and liautedi.codautor=autor.codautor;        

 * Consultar quien es el autor del libro Estructura de datos.

Análisis

1. Que se desea consultar y de que tablas?.

  • libro.idlibro
  • libro.descripcion
  • autor.codautor
  • autor.nombre 

2. Que tablas se ven afectadas o involucradas?

  • Libro
  • Autor
  • Liautedi

3. Condición (es)

  • libro.descripcion=Estructura de datos     

4. Como se relacionan las tablas?

  • libro.idlibro=liautedi.idlibro 
  • liautedi.codautor=autor.codautor     

5. Que comando se debe utilizar?

Select

SINTAXIS

select libro.titulo,autor.nombre from libro,autor,liautedi where libro.titulo='Estructura de datos' and libro.id_libro=liautedi.id_libro1 and liautedi.codaut1=autor.codaut;           

* Consultar de que libros es autor Luis Joyanes.

Análisis

1. Que se desea consultar y de que tablas?.

  • libro.idlibro
  • libro.descripcion
  • autor.codautor
  • autor.nombre 

2. Que tablas se ven afectadas o involucradas?

  • Libro
  • Autor
  • Liautedi 

3. Condición (es)

  • autor.nombre=Luis joyanes     

4. Como se relacionan las tablas?

  • libro.idlibro=liautedi.idlibro
  • liautedi.codautor=autor.codautor   

5. Que comando se debe utilizar?

Select

SINTAXIS

select libro.descripcion,autor.nombre from libro,autor,liautedi where autor.nombre='Luis Joyanes' and libro.idlibro=liautedi.idlibro and liautedi.codautor=autor.codautor;            

* Consultar que autores escribieron el libro Bd II.

Análisis

1. Que se desea consultar y de que tablas?.

  • libro.descripcion
  • autor.nombre 

2. Que tablas se ven afectadas o involucradas?

  • Libro
  • Autor
  • Liautedi 

3. Condición (es)

  • libro.descripcion=BD II     

4. Como se relacionan las tablas?

  • libro.idlibro=liautedi.idlibro
  • liautedi.codautor=autor.codautor   

5. Que comando se debe utilizar?

Select

SINTAXIS

select libro.descripcion 'LIBRO',autor.nombre 'AUTOR' from libro,autor,liautedi where libro.descripcion='BD II' and libro.idlibro=liautedi.idlibro and liautedi.codautor=autor.codautor;            

* Visualizar el el nombre del libro, el nombre del autor y el nombre de la editorial que los publica.

Análisis

1. Que se desea consultar y de que tablas?.

  • libro.idlibro 
  • libro.descripcion 
  • autor.codautor 
  • autor.nombre 
  • editorial.codedit 
  • editorial.nombre     

2. Que tablas se ven afectadas o involucradas?

  • Libro 
  • Autor 
  • Liautedi 
  • Editorial

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • libro.idlibro=liautedi.idlibro 
  • liautedi.codautor=autor.codautor 
  • liautedi.codedit=editorial.codedit

5. Que comando se debe utilizar?

Select

SINTAXIS

select libro.descripcion 'LIBRO' ,autor.nombre 'AUTOR' ,editorial.nombre 'EDITORIAL' from libro,autor,editorial,liautedi where libro.idlibro=liautedi.idlibro and liautedi.codautor=autor.codautor and editorial.codedit=liautedi.codedit;            

A continuación se puede observar el tee de esta sesión.

FUNCIONES BASICAS PARA REALIZAR CALCULOS

SINTAXIS

Select funcion(valor o campo) from nombretabla;

Plantilla

Análisis

1. Que se desea calcular y de que tabla?.

2. Que tablas se ven afectadas o involucradas?

3. Condición (es)

4. Como se relacionan las tablas?

5. Función a utilizar: 

SINTAXIS

---------------------------------------------------------------------------------------------------------------------------------------------------------

* Ej: Cuantos libros hay en la librería     

Análisis

1. Que se desea calcular y de que tabla?.

  • Cantidad de libros 
  • Tabla Libro

2. Que tablas se ven afectadas o involucradas?

  • Libro

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • No aplica

5. 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  

Análisis

1. Que se desea calcular y de que tabla?.

  • Total precio 
  • Tabla Libro

2. Que tablas se ven afectadas o involucradas?

  • Libro

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • No aplica

5. 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

Análisis

1. Que se desea calcular y de que tabla?.

  • Precio Más alto 
  • Tabla Libro 

2. Que tablas se ven afectadas o involucradas?

  • Libro

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • No aplica

5. 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   

Análisis

1. Que se desea calcular y de que tabla?.

  • Nro páginas mínimo
  • Tabla Libro

2. Que tablas se ven afectadas o involucradas?

  • Libro

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • No aplica

5. Función a utilizar: Min

SINTAXIS

Select min(nropagina) 'Libro mas Pequeño' from libro;  

* Ej: hallar el valor promedio de los libros  

Análisis

1. Que se desea calcular y de que tabla?.

  • Valor promedio del precio
  • Tabla Libro

2. Que tablas se ven afectadas o involucradas?

  • Libro

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • No aplica

5. 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 descripcion='Redes y Comunicaciones' where idlibro='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 nropagina; 
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'; 

update libro set cantidad=10 where idlibro='L02'; 

update libro set cantidad=15 where idlibro='L03';     

y etc..    

* 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 DIAGRAMACION 

SINTAXIS

Delete from libro where idlibro='L08'; O Tambien 

delete from libro where descripcion='Diagramacion';


* 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 descripcion 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).

SINTAXIS

select * from tabla1 inner join tabla2 on tabla1.id=tabla2.id inner join tabla3 on tabla2.id=tabla3.id2; 

Ejemplo:   

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; 

* Visualizar el codigo del libro, el nombre del libro, el codigo del autor y el nombre del autor con sus respectivos libros escritos.        

Análisis

1. Que se desea consultar y de que tablas?.

  • libro.idlibro
  • libro.descripcion
  • autor.codautor
  • autor.nombre

2. Que tablas se ven afectadas o involucradas?

  • Libro
  • Autor
  • Liautedi 

3. Condición (es)

  • Ninguna ( NA )

4. Como se relacionan las tablas?

  • libro.idlibro=liautedi.idlibro
  • liautedi.codautor=autor.codautor

5. Que comando se debe utilizar?

Select - inner join

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' 


LEFT JOIN

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 ceteados a NULL.

* Visualizar que libros no se les ha asignado un autor utilizando el left join  

select libro.idlibro,libro.descripcion,liautedi.idlibro from libro left join liautedi on libro.idlibro=liautedi.idlibro where liautedi.idlibro is null;

RIGHT JOIN

El right join opera del mismo modo que el left join, solo que la búsqueda de coincidencias las realiza del modo contrario, es decir busca valores de coincidencias desde la tabla de la derecha hacia la tabla que esta a la izquierda y sucede lo mismo que en el left, sino encuentra coincidencias se genera una fila extra con todos los campos ceteados en null.

* Visualizar el listado de los libros que tienen al menos un autor asignado

select libro.idlibro,libro.descripcion,liautedi.idlibro from libro right join liautedi on libro.idlibro=liautedi.idlibro;            

A continuación se puede observar el tee de esta sesión.

GROUP BY

SINTAXIS

Select from nombretabla group by nombrecampo;

Plantilla

Análisis

1. Que se desea consultar

2. Campo en el que se aplica la función

3. Campo por el cuál va a agrupar

4. Comando

SINTAXIS

--------------------------------------------------------------------------------------------------------------------------------------------------------

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

  • Cantidad de visitantes por Ciudad

2. Campo en el que se aplica la función

  • montocompra o ciudad     

3. Campo por el cuál va a agrupar

  • Ciudad

4. Comando

group by-Select-Count

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 

Análisis

1. Que se desea consultar

  • Total comprado por Ciudad     

2. Campo en el que se aplica la función

  • montocompra     

3. Campo por el cuál va a agrupar

  • Ciudad     

4. Comando

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 función

  • montocompra  

3. Campo por el cuál 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

Análisis

1. Que se desea consultar

  • Ciudad

2. Campo en el que se aplica la función

  • Ciudad 

3. Campo por el cuál va a agrupar

  • Ciudad 

4. Comando

Select group by : funcion Count- Where

Condición: 

Cantidad > 2

SINTAXIS

Select ciudad ,count(ciudad) as 'cantidad de visitantes' from visitantes group by ciudad having count(ciudad)>2;


* Calcular el valor promedio de montocompra 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  

Análisis

1. Que se desea consultar

  • Promedio de compra por Ciudad y Sexo     

2. Campo en el que se aplica la función

  • Montocompra     

3. Campo por el cuál 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

Análisis

1. Que se desea consultar

  • Ciudad

2. Campo en el que se aplica la función

  • Montocompra

3. Campo por el cuál va a agrupar

  • Ciudad 

4. Comando

Select - group by : Funcion Sum - having

Condición:

Suma > 5 millones

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 

SINTAXIS

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; 


A continuación se puede observar el tee de esta sesión ( Manejo join ).       

A continuación se puede observar el tee de esta sesión ( Group by - Vistas ).

Para seguir visualizando comandos de MySql te puedes dirigir al siguiente link, para continuar con la tercera parte.

¡Crea tu página web gratis! Esta página web fue creada con Webnode. Crea tu propia web gratis hoy mismo! Comenzar