You are on page 1of 39

Nombre: Hugo Snchez Gmez

Centro: IES. Ingeniero de la Cierva


Ciclo Formativo: A.S.I.R.
Curso: 1 ASIR Clase: C14
Mdulo: Base de Datos.

ndice de contenido
Comandos MySQL..........................................................................................................................1
-- Introduccin......................................................................................................................................2
-- MYSQL cliente o monitor (no acaban en punto y coma).................................................................2
1. Cmo se llama el programa cliente de MySQL? ......................................................................2
2. Cul es el nombre del servicio en Windows del motor de MySQL?.........................................2
3. Ejecutar cliente para ver ayuda...............................................................................................2
4. Ejecutar cliente MySQL para ver la versin y salir.....................................................................2
5. Ejecutar cliente MySQL como root y pedir password.................................................................2
-- Ejecutando ya el cliente MySQL (acaban en punto y coma)............................................................2
6. Visualizar ayuda...........................................................................................................................2
7. Salir..............................................................................................................................................2
8. Ejecutar un script.........................................................................................................................2
9. Mostrar estado del servidor..........................................................................................................3
10. Usar una base de datos existente (nico comando que no acaba en punto y coma)..................3
11. Cambiar el prompt de mysql> por miSGBD>...........................................................................3
12. Mostrar versin de MySQL.......................................................................................................3
13. Mostrar fecha actual...................................................................................................................3
14. Mostrar el resultado de 34/2......................................................................................................3
15. Mostrar fecha y hora actual.......................................................................................................3
16. Mostrar el usuario......................................................................................................................3
17. Mostrar las bases de datos existentes.........................................................................................3
18. Usar la base de datos ejemplo....................................................................................................3
19. Crear la bases de datos libros.....................................................................................................3
20. Mostrar base de datos en uso.....................................................................................................4
21. Mostrar estructura (columnas) de la tabla alumno.....................................................................4
22. Mostrar las tablas existentes......................................................................................................4
23. Mostrar el contenido de una tabla..............................................................................................4
24. Escribe este mensaje:.................................................................................................................4
25. Qu escribe esta sentencia?......................................................................................................4
26. Qu escribe esta sentencia?......................................................................................................5
27. Prueba e interpreta este comando:.............................................................................................5
28. Asigna el valor la variable dato y mustrala posteriormente.....................................................5
29. Si previamente no asignamos valor a la variable x y ejecutamos:.............................................6
30. Averigua el nmero mximo de conexiones mostrando la variable global max_connections.. 6
31. Almacena en tres variables tu nombre y apellidos y mustralos despus como apellido1,
apellido2 y nombre..........................................................................................................................7
32. Modifica el nmero de conexiones del servidor a 88 y mustralo posteriormente...................7
33. Qu escribe esta sentencia?...........................................................................................................8
34. Qu escribe esta sentencia?...........................................................................................................8
35. Qu escribe esta sentencia?...........................................................................................................8
36. Qu escribe esta sentencia?...........................................................................................................9
37. Escribe una sentencia que obtenga el mayor de estos nmeros: 13, 24, 3, 8 y 27.........................9
38. Escribe una sentencia que obtenga el menor de estos nmeros: -15, 18, 3, 68 y 27......................9
39. Qu escribe esta sentencia?.........................................................................................................10
40. Qu escribe esta sentencia?.........................................................................................................10
41. Qu se escribe despus de ejecutar lo siguiente?........................................................................10
42. Qu se escribe despus de ejecutar lo siguiente?........................................................................11
43. Qu escribe esta sentencia?.........................................................................................................11
44. Qu escribe esta sentencia?.........................................................................................................11
45. Qu escribe esta sentencia?.........................................................................................................12
46. Qu escribe esta sentencia?.........................................................................................................12

47. Qu escribe esta sentencia?.........................................................................................................12


48. Qu escribe esta sentencia?.........................................................................................................13
49. Qu escribe esta sentencia?.........................................................................................................13
50. Qu escribe esta sentencia?.........................................................................................................13
51. Completa la ltima sentencia para que compruebe si el formato del correo es correcto.............14
52. Qu escriben estas sentencias?...................................................................................................14
53. Qu escribe esta sentencia?.........................................................................................................15
54. Muestra el ao, mes y da actual..................................................................................................15
55. Muestra la hora actual..................................................................................................................16
56. Qu escribe esta sentencia?.........................................................................................................16
57. Escribe sentencia SQL que muestre al ejecutarla (en cualquier momento) cuntos das quedan
para acabar el curso (supongamos 30 junio)......................................................................................16
58. Qu escriben estas sentencias?...................................................................................................17
59. Muestra fecha y hora actual..........................................................................................................18
60. Muestra el nombre del mes actual................................................................................................18
61. Muestra 2*3 como clculo usando tabla DUAL..........................................................................18
62. Muestra todas las oficinas............................................................................................................19
63. Muestra todos los productos.........................................................................................................19
64. Muestra ciudad y regin de las oficinas.......................................................................................20
65. Muestra nombre y edad (como aos) de los empleados...............................................................20
66. Obtener las regiones (distintas, sin repetir) de las oficinas..........................................................21
67. Muestra todos los empleados........................................................................................................21
68. Obtener todos los ttulos (distintos) de lo empleados...................................................................21
69. Lista nombre y objetivo (diferencia entre cuota y ventas) de los empleados...............................22
70. Lista los nombres, oficinas y fechas de contrato de todos los vendedores...................................22
71. Lista la ciudad, objetivo y ventas de las oficinas.........................................................................23
72. Lista los nombres, cuotas y directores de los vendedores............................................................23
73. Lista la ciudad, regin y ventas de las oficinas............................................................................23
74. Lista la ciudad, region y la diferencia entre ventas y objetivo (llmalo resultado) para cada
oficina.................................................................................................................................................24
75. Muestra los identificadores de cada producto, su descripcin y valor (existencias por precio) de
cada producto almacenado.................................................................................................................24
76. Lista el nombre, el mes y el ao de contrato de cada vendedor...................................................25
77. Lista las ventas para cada ciudad apareciendo en medio el mensaje tiene ventas de................25
78. Listar oficinas cuyas ventas exceden el objetivo..........................................................................26
79. Mostrar el nombre, cuota y ventas del vendedor nmero 105......................................................26
80. Listar nombre y ventas de los empleados que estn dirigidos por el empleado nmero104........26
81. Lista de los vendedores contratados antes de 2006......................................................................27
82. Lista oficinas cuyas ventas estn por debajo del 80% del objetivo..............................................27
83. Lista de oficinas no dirigidas por el empleado 108......................................................................27
84. Seleccionar el nombre y lmite de crdito del cliente nmero 2107............................................27
85. Lista de nombres de vendedores que superan sus ventas las cuotas............................................27
86. Lista de nombres de vendedores que no superan sus ventas las cuotas.......................................28
87. Lista la ciudad, objetivo y ventas de las oficinas de la regin Eastern......................................28
88. Mostrar el nombre, cuota y ventas del vendedor nmero 107......................................................28
89. Lista el nombre y fecha de contrato de los vendedores con ventas superiores a 500000.............28
-- IS NULL.....................................................................................................................................28
90. Listar empleados que no tienen director.......................................................................................28
91. Listar empleados que no tienen oficina asignada.........................................................................28
-- BETWEEN.................................................................................................................................29
92. Hallar los nmeros de los pedidos realizados en enero de 2008..................................................29
93.Hallar el nmero e importe de los pedidos cuyo importe est entre 20000 y 30000.....................29

94. Listar el nombre de los vendedores cuyas ventas estn entre el 70 y el 90 por ciento de su cuota.
............................................................................................................................................................30
-- IN................................................................................................................................................30
95. Lista los vendedores que trabajan en New York, Chicago o Atlanta............................................30
96. Listar los nmeros de los pedidos obtenidos por los vendedores 107,109,101 y 104..................30
------->Ms avanzado:pedidos de empleados de ms de 40 aos.......................................................31
-- LIKE...............................................................................................................................................31
97. Mostrar el lmite de crdito de Ace International.........................................................................31
98. Mostrar los nombres de los clientes que son Inc......................................................................31
-- AND,OR,NOT................................................................................................................................31
99. Listar los nombres de los vendedores que estn por debajo de la cuota o con ventas inferiores a
300000 euros......................................................................................................................................31
100. Listar los nombres de los vendedores que estn por debajo de la cuota y con ventas inferiores a
300000 euros......................................................................................................................................31
101. Listar los nombres de los vendedores que estn por debajo de la cuota pero cuyas ventas no
son inferiores a 300000 euros.............................................................................................................32
102. Hallar todos los vendedores que cumplen todo lo siguiente a la vez:........................................32
a)Trabajan en Denver, New York o Chicago......................................................................................32
b)Su contrato es posterior a 2005.......................................................................................................32
c) Sus ventas estn por encima de la cuota.........................................................................................32
-- ORDER BY....................................................................................................................................32
103. Lista los nombres de los empleados ordenados ascendentemente.............................................32
104. Lista los nombres de los empleados por edad ascendente..........................................................33
105. Lista los nombres y edad de los empleados por edad descendente............................................33
106. Lista las regiones ascendentemente y ciudades descendentemente de las oficinas....................33
107. Lista la ciudad, objetivo y ventas de las oficinas de la regin Eastern cuyas ventas exceden a
sus objetivos, ordenadas alfabticamente por ciudad.........................................................................34
108. Listar ciudades y resultado (ventas-objetivo) descendentemente por resultado.........................34

Comandos MySQL

BSD

Comandos MySQL

BSD

-- Introduccin
-- MYSQL cliente o monitor (no acaban en punto y coma)
1. Cmo se llama el programa cliente de MySQL?
mysql

2. Cul es el nombre del servicio en Windows del motor de MySQL?


mysqld

3. Ejecutar cliente para ver ayuda.


mysql --help

4. Ejecutar cliente MySQL para ver la versin y salir.


mysql -V
mysql --version

5. Ejecutar cliente MySQL como root y pedir password.


mysql -u root -p
mysql -user=root -p

-- Ejecutando ya el cliente MySQL (acaban en punto y coma)


6. Visualizar ayuda.
/h
help

7. Salir.
exit
quit
/q

8. Ejecutar un script.
\. (nombre_fichero) o (ruta)
source (nombre_fichero) o (ruta)

Comandos MySQL

BSD

9. Mostrar estado del servidor.


\s
status

10. Usar una base de datos existente (nico comando que no acaba en
punto y coma).
use (nombre_base_de_datos)

11. Cambiar el prompt de mysql> por miSGBD>.


\R miSGBD

12. Mostrar versin de MySQL.


select version();

13. Mostrar fecha actual.


select curdate();
select current_date();

14. Mostrar el resultado de 34/2.


select 34/2;

15. Mostrar fecha y hora actual.


select now();
select sysdate();

16. Mostrar el usuario.


select user();

17. Mostrar las bases de datos existentes.


show databases;

18. Usar la base de datos ejemplo.


use ejemplo

19. Crear la bases de datos libros.


create database libros;

Comandos MySQL

BSD

20. Mostrar base de datos en uso.


select database();

21. Mostrar estructura (columnas) de la tabla alumno.


describe alumno;
desc alumno;

22. Mostrar las tablas existentes.


show tables;

23. Mostrar el contenido de una tabla.


select * from tabla;3

24. Escribe este mensaje:


El Quijote de la Mancha lo escribi Cervantes.
(none)>'El "Quijote de la Mancha" lo escribi Cervantes'
-> ;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near ''El "Quijote de la Mancha" lo
escribi Cervantes'' at line 1
(none)>select 'El "Quijote de la Mancha" lo escribi Cervantes';
+--------------------------------------------------+
| El "Quijote de la Mancha" lo escribi Cervantes |
+--------------------------------------------------+
| El "Quijote de la Mancha" lo escribi Cervantes |
+--------------------------------------------------+
1 row in set (0.00 sec)

25. Qu escribe esta sentencia?


SELECT TRUE, false, FALSE, true;
mysql> SELECT TRUE, false, FALSE, true;
+------+-------+-------+------+
| TRUE | FALSE | FALSE | TRUE |
+------+-------+-------+------+
|
1 |
0 |
0 |
1 |
+------+-------+-------+------+
1 row in set (0.00 sec)

Comandos MySQL

BSD

26. Qu escribe esta sentencia?


SELECT "clculo ",2*3 AS resultado;
mysql> SELECT "clculo ",2*3 AS resultado;
+-----------+-----------+
| clculo
| resultado |
+-----------+-----------+
| clculo
|
6 |
+-----------+-----------+
1 row in set (0.00 sec)

27. Prueba e interpreta este comando:


select @@lower_case_table_names;
mysql> select @@lower_case_table_names;
+--------------------------+
| @@lower_case_table_names |
+--------------------------+
|
0 |
+--------------------------+
1 row in set (0.00 sec)

28. Asigna el valor la variable dato y mustrala posteriormente.


mysql> select @dato;
+-------+
| @dato |

Comandos MySQL

BSD

+-------+
| NULL |
+-------+
1 row in set (0.00 sec)
mysql> set @dato=20;
Query OK, 0 rows affected (0.00 sec)
mysql> select @dato;
+-------+
| @dato |
+-------+
|
20 |
+-------+
1 row in set (0.00 sec)
mysql>

29. Si previamente no asignamos valor a la variable x y ejecutamos:


SELECT @x;
qu obtenemos?
mysql> select @x;
+------+
| @x
|
+------+
| NULL |
+------+
1 row in set (0.00 sec)

Selecciona la variable 'x' y la muestra por la salida estndar (consola). En ste caso no tena ningn
valor dicha variable.

30. Averigua el nmero mximo de conexiones mostrando la variable


global max_connections.
mysql> select @@global.max_connections;
+--------------------------+
| @@global.max_connections |
+--------------------------+
|
151 |
+--------------------------+
1 row in set (0.00 sec)

Comandos MySQL

BSD

31. Almacena en tres variables tu nombre y apellidos y mustralos


despus como apellido1, apellido2 y nombre.

mysql> set @nombre='Hugo';


Query OK, 0 rows affected (0.00 sec)
mysql> set @apellido 1='Snchez';
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds
to your MySQL server version for the right syntax to use near '1='Snchez'' at line 1
mysql> set @apellido1='Snchez';
Query OK, 0 rows affected (0.00 sec)
mysql> set @apellido2='Gmez';
Query OK, 0 rows affected (0.00 sec)
mysql> select @nombre,@apellido1,@apellido2;
+---------+------------+------------+
| @nombre | @apellido1 | @apellido2 |
+---------+------------+------------+
| Hugo
| Snchez
| Gmez
|
+---------+------------+------------+
1 row in set (0.00 sec)
mysql>

32. Modifica el nmero de conexiones del servidor a 88 y mustralo


posteriormente.
mysql> select @@global.max_connections;
+--------------------------+
| @@global.max_connections |
+--------------------------+
|
151 |
+--------------------------+
1 row in set (0.00 sec)
mysql> set @@global.max_connections=88;
Query OK, 0 rows affected (0.00 sec)
mysql> select @@global.max_connections;
+--------------------------+
| @@global.max_connections |
+--------------------------+
|
88 |
+--------------------------+
1 row in set (0.00 sec)

Comandos MySQL

BSD

-- Funciones y operadores

33. Qu escribe esta sentencia?


SELECT 2*6+8/2*2;
mysql> select 2*6+8/2*2;
+-----------+
| 2*6+8/2*2 |
+-----------+
|
20.0000 |
+-----------+
1 row in set (0.00 sec)

34. Qu escribe esta sentencia?


SELECT NULL <=> 1;
mysql> SELECT NULL <=> 1;
+------------+
| NULL <=> 1 |
+------------+
|
0 |
+------------+
1 row in set (0.00 sec)

Esta sentencia quiere comparar el valor 1 con Null siendo el resultado falso ya que null es nada.

35. Qu escribe esta sentencia?


SET @x=5;
SELECT @x IS UNKNOWN;
mysql> SET @x=5;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @x IS UNKNOWN;
+---------------+
| @x IS UNKNOWN |
+---------------+
|
0 |
+---------------+
1 row in set (0.00 sec)

Esta sentencia trata de afirmar que la variable es desconocida siendo el resultado falso ya que se le
8

Comandos MySQL

BSD

ha asignado un valor anteriormente.

36. Qu escribe esta sentencia?


SET @x=10;
SELECT @X NOT BETWEEN 7 AND 9;
mysql> SET @x=10;
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT @X NOT BETWEEN 7 AND 9;
+------------------------+
| @X NOT BETWEEN 7 AND 9 |
+------------------------+
|
1 |
+------------------------+
1 row in set (0.00 sec)

Esta sentencia afirma que el valor 10 no est dentro del intervalo [7-9].

37. Escribe una sentencia que obtenga el mayor de estos


nmeros: 13, 24, 3, 8 y 27.
En este caso no se puede meter el valor NULL ya que al haber un desconocido dentro de los
valores es imposible saber cul es el mayor o el menor.
mysql> select greatest (13,24,3,8,27);
+-------------------------+
| greatest (13,24,3,8,27) |
+-------------------------+
|
27 |
+-------------------------+
1 row in set (0.00 sec)

38. Escribe una sentencia que obtenga el menor de estos


nmeros: -15, 18, 3, 68 y 27.
En este caso no se puede meter el valor NULL ya que al haber un desconocido dentro de los
valores es imposible saber cul es el mayor o el menor.
mysql> select least (-15,18,3,68,27);
+------------------------+
| least (-15,18,3,68,27) |
+------------------------+
|
-15 |
+------------------------+

Comandos MySQL

BSD

1 row in set (0.00 sec)

39. Qu escribe esta sentencia?


SELECT NOT NULL;
mysql> SELECT NOT NULL;
+----------+
| NOT NULL |
+----------+
|
NULL |
+----------+
1 row in set (0.00 sec)

40. Qu escribe esta sentencia?


SELECT 2>4 AND NULL<=>NULL AND 34<12 OR 2>-15;
mysql> SELECT 2>4 AND NULL<=>NULL AND 34<12 OR 2>-15;
+----------------------------------------+
| 2>4 AND NULL<=>NULL AND 34<12 OR 2>-15 |
+----------------------------------------+
|
1 |
+----------------------------------------+
1 row in set (0.00 sec)

Esta sentencia se encarga de hacer dos grandes comparaciones mediante el OR en el cul separa en
dos dicha sentencia haciendo vlida una de las dos partes; por eso sale el valor verdadero.

41. Qu se escribe despus de ejecutar lo siguiente?


SET @x=10;
SELECT CASE @x WHEN 1 THEN *
WHEN 2 THEN **
ELSE ...... END AS resultado;
mysql> select case @x when 1 then "*"
-> when 2 then "**"

10

Comandos MySQL

BSD

-> else "......." end as resultado;


+-----------+
| resultado |
+-----------+
| .......
|
+-----------+
1 row in set (0.00 sec)

42. Qu se escribe despus de ejecutar lo siguiente?


SET @x='casa';
SELECT IF (@X<'pez','antes','despus') AS diccionario;
Esto nos pregunta si la palabra 'casa' est antes de 'pez' o despus en el diccionario.
mysql> SET @x='casa';
Query OK, 0 rows affected (0.00 sec)
mysql> SELECT IF (@X<'pez','antes','despus') AS diccionario;
+-------------+
| diccionario |
+-------------+
| antes
|
+-------------+
1 row in set (0.00 sec)

43. Qu escribe esta sentencia?


SELECT ASCII('A') AS codigo;
mysql> SELECT ASCII('A') AS codigo;
+--------+
| codigo |
+--------+
|
65 |
+--------+
1 row in set (0.00 sec)

44. Qu escribe esta sentencia?


SELECT CHAR_LENGTH('casa') AS longitud;
mysql> select char_length("casa") as longitud;
+----------+
| longitud |
+----------+
|
4 |
+----------+

11

Comandos MySQL

BSD

1 row in set (0.00 sec)

Esta sentencia nos muestra la longitud en caracteres de la cadena casa mostrando la salida como
longitud.

45. Qu escribe esta sentencia?


SELECT CONCAT('Mi ','casa') AS mensaje;
mysql> select concat("Mi","Casa") as mensaje;
+---------+
| mensaje |
+---------+
| MiCasa |
+---------+
1 row in set (0.00 sec)

46. Qu escribe esta sentencia?


SELECT LOCATE('or','Un castor canadiense') AS lugar;
mysql> select locate("or","Un castor canadiense") as lugar;
+-------+
| lugar |
+-------+
|
8 |
+-------+
1 row in set (0.00 sec)

Nos muestra en qu lugar est la subcadena or dentro de la cadena Un castor canadiense


indicando que se encuentra a partir del carcter nmero 8.

47. Qu escribe esta sentencia?


SELECT REVERSE('12345') AS mensaje;
mysql> select reverse("12345") as mensaje;
+---------+
| mensaje |
+---------+
| 54321
|
+---------+

12

Comandos MySQL

BSD

1 row in set (0.00 sec)

Con sta sentencia podr darle la vuelta a la cadena que se le est pasando (12345) mostrando la
salida en orden inverso.

48. Qu escribe esta sentencia?


SELECT LOWER('Curso de Java') AS mensaje;
mysql> select lower("Curso de Java") as mensaje;
+---------------+
| mensaje
|
+---------------+
| curso de java |
+---------------+
1 row in set (0.00 sec)

La sentencia lower hace que todos los caracteres que estn en maysculas se muestren en
minsculas en la salida.

49. Qu escribe esta sentencia?


SELECT UPPER('Curso de Java') AS mensaje;
mysql> select upper("Curso de Java") as mensaje;
+---------------+
| mensaje
|
+---------------+
| CURSO DE JAVA |
+---------------+
1 row in set (0.00 sec)

Con esta sentencia conseguir que todos los caracteres de la cadena que se le pasa se muestren en
maysculas por la salida.

50. Qu escribe esta sentencia?


SELECT SUBSTRING('Curso de Java',11,2) AS mensaje;
mysql> select substring("Curso de Java",11,2) as mensaje;
+---------+
| mensaje |
+---------+
| av
|
+---------+
1 row in set (0.00 sec)

13

Comandos MySQL

BSD

Esta sentencia nos muestra los dos siguientes caracteres a partir de la posicin 11 y congiendo los
dos siguientes caracteres.

51. Completa la ltima sentencia para que compruebe si el


formato del correo es correcto.
SET @correo='paco@yahoo.es';
select @correo;
SELECT @correo LIKE
mysql> select @correo like "%@%.%";
+----------------------+
| @correo like "%@%.%" |
+----------------------+
|
1 |
+----------------------+
1 row in set (0.00 sec)

Expresin regular: "%@%.%"

52. Qu escriben estas sentencias?


SELECT 9/2; Resultado de la divisin con decimales.
SELECT 9 DIV 2; Resultado de la divisin sin decimales.
SELECT 9 % 2;
SELECT POW(2,3); Resultado de la potencia (2)
SELECT ROUND(3.8); Redondeo al alza.
SELECT TRUNCATE(3.8,0); Redondeo a la baja.

mysql> SELECT 9/2;


+--------+
| 9/2
|
+--------+
| 4.5000 |
+--------+
1 row in set (0.00 sec)
mysql> SELECT 9 DIV 2;
+---------+
| 9 DIV 2 |
+---------+
|
4 |
+---------+

14

Comandos MySQL

BSD

1 row in set (0.00 sec)


mysql> SELECT 9 % 2;
+-------+
| 9 % 2 |
+-------+
|
1 |
+-------+
1 row in set (0.00 sec)
mysql> SELECT POW(2,3);
+----------+
| POW(2,3) |
+----------+
|
8 |
+----------+
1 row in set (0.00 sec)
mysql> SELECT ROUND(3.8);
+------------+
| ROUND(3.8) |
+------------+
|
4 |
+------------+
1 row in set (0.00 sec)
mysql> SELECT TRUNCATE(3.8,0);
+-----------------+
| TRUNCATE(3.8,0) |
+-----------------+
|
3 |
+-----------------+
1 row in set (0.00 sec)

53. Qu escribe esta sentencia?


SELECT ADDTIME ('01:03:55','0:0:6');
mysql> SELECT ADDTIME ('01:03:55','0:0:6');
+------------------------------+
| ADDTIME ('01:03:55','0:0:6') |
+------------------------------+
| 01:04:01
|
+------------------------------+
1 row in set (0.00 sec)

Esta sentencia aade tiempo a un tiempo ya determinado, en este caso le sumar 6 segundos al
tiempo que est en la primera parte de la tupla.

54. Muestra el ao, mes y da actual.


mysql> select curdate();
+------------+
| curdate() |

15

Comandos MySQL

BSD

+------------+
| 2014-05-15 |
+------------+
1 row in set (0.00 sec)

55. Muestra la hora actual.


mysql> select curtime();
+-----------+
| curtime() |
+-----------+
| 13:04:36 |
+-----------+
1 row in set (0.00 sec)
mysql>

56. Qu escribe esta sentencia?


SELECT DATE ('2011-03-03 01:03:55');
mysql> SELECT DATE ('2011-03-03 01:03:55');
+------------------------------+
| DATE ('2011-03-03 01:03:55') |
+------------------------------+
| 2011-03-03
|
+------------------------------+
1 row in set (0.00 sec)

Esta sentencia muestra tan solo la parte de la fecha que interesa (date) quitando el resto de
informacoin que no hace falta.

57. Escribe sentencia SQL que muestre al ejecutarla (en


cualquier momento) cuntos das quedan para acabar el
curso (supongamos 30 junio).
mysql> select datediff(curdate(),'2014-6-30');
+---------------------------------+
| datediff(curdate(),'2014-6-30') |
+---------------------------------+

16

Comandos MySQL

BSD

|
-46 |
+---------------------------------+
1 row in set (0.00 sec)

58. Qu escriben estas sentencias?


SELECT DATE_ADD('2011-06-10',INTERVAL 3 DAY); Aade 1 dia a la fecha.
SELECT DATE_ADD('2011-06-10',INTERVAL 1 WEEK); Aade 1 semana a la fecha.
SELECT DATE_SUB('2011-06-10',INTERVAL 1 WEEK); Quita 1 semana a la fecha.
SELECT DATE_FORMAT ('2011-01-1','%W %u'); Elige un formato para la fecha.
SELECT DATE_FORMAT ('2011-01-1','%D %a %Y'); Elige un formato para la fecha
SELECT DAYOFYEAR ('2011-01-12'); Dice el nmero de dia del mes.
mysql> SELECT DATE_FORMAT ('2011-01-1','%D %a %Y');
+--------------------------------------+
| DATE_FORMAT ('2011-01-1','%D %a %Y') |
+--------------------------------------+
| 1st Sat 2011
|
+--------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DATE_ADD('2011-06-10',INTERVAL 3 DAY);
+---------------------------------------+
| DATE_ADD('2011-06-10',INTERVAL 3 DAY) |
+---------------------------------------+
| 2011-06-13
|
+---------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DATE_ADD('2011-06-10',INTERVAL 1 WEEK);
+----------------------------------------+
| DATE_ADD('2011-06-10',INTERVAL 1 WEEK) |
+----------------------------------------+
| 2011-06-17
|
+----------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DATE_SUB('2011-06-10',INTERVAL 1 WEEK);
+----------------------------------------+
| DATE_SUB('2011-06-10',INTERVAL 1 WEEK) |
+----------------------------------------+
| 2011-06-03
|
+----------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DATE_FORMAT ('2011-01-1','%W %u');
+-----------------------------------+
| DATE_FORMAT ('2011-01-1','%W %u') |
+-----------------------------------+
| Saturday 00
|
+-----------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DATE_FORMAT ('2011-01-1','%D %a %Y');
+--------------------------------------+
| DATE_FORMAT ('2011-01-1','%D %a %Y') |
+--------------------------------------+
| 1st Sat 2011
|

17

Comandos MySQL

BSD

+--------------------------------------+
1 row in set (0.00 sec)
mysql> SELECT DAYOFYEAR ('2011-01-12');
+--------------------------+
| DAYOFYEAR ('2011-01-12') |
+--------------------------+
|
12 |
+--------------------------+
1 row in set (0.00 sec)
mysql>

59. Muestra fecha y hora actual.


mysql> select now();
+---------------------+
| now()
|
+---------------------+
| 2014-05-15 13:12:47 |
+---------------------+
1 row in set (0.01 sec)

60. Muestra el nombre del mes actual.


mysql> select monthname (curdate());
+-----------------------+
| monthname (curdate()) |
+-----------------------+
| May
|
+-----------------------+
1 row in set (0.00 sec)

61. Muestra 2*3 como clculo usando tabla DUAL.


COMANDO:
select 2*3 as DUAL;

SALIDA:
mysql> select 2*3 as "DUAL";
+------+
| DUAL |
+------+
|
6 |
+------+

18

Comandos MySQL

BSD

1 row in set (0.00 sec)


mysql>

62. Muestra todas las oficinas.


COMANDO:
select * from oficinas;

SALIDAS:
mysql> select * from oficinas;
+---------+-------------+--------+-----+----------+--------+
| Oficina | Ciudad
| Region | Dir | Objetivo | Ventas |
+---------+-------------+--------+-----+----------+--------+
|
12 | Chicago
| Este
| 104 |
800000 | 735042 |
|
13 | Atlanta
| Este
| 105 |
350000 | 367911 |
|
21 | Los Angeles | Oeste | 108 |
725000 | 835915 |
|
22 | Denver
| Oeste | 108 |
300000 | 186042 |
|
11 | New York
| Este
| 106 |
575000 | 692637 |
+---------+-------------+--------+-----+----------+--------+
5 rows in set (0.00 sec)
mysql>

63. Muestra todos los productos.


empresaJCbis>select * from productos;
+-------+------------+-------------------+--------+-------------+
| Idfab | Idproducto | Descripcion
| Precio | Existencias |
+-------+------------+-------------------+--------+-------------+
| ACI
| 41001
| Articulo Tipo 1
|
55 |
277 |
| ACI
| 41002
| Articulo Tipo 2
|
76 |
167 |
| ACI
| 41003
| Articulo Tipo 3
|
107 |
207 |
| ACI
| 41004
| Articulo Tipo 4
|
117 |
139 |
| ACI
| 4100X
| Ajustador
|
25 |
37 |
| ACI
| 4100Y
| Extractor
|
2750 |
25 |
| ACI
| 4100Z
| Montador
|
2500 |
28 |
| BIC
| 41003
| Manivela
|
652 |
3 |
| BIC
| 41089
| Reten
|
225 |
78 |
| BIC
| 41672
| Placa
|
180 |
0 |
| FEA
| 112
| Cubierta
|
148 |
115 |
| FEA
| 114
| Bancada Motor
|
243 |
15 |
| IMM
| 773C
| Riostra 1/2 Tm
|
975 |
28 |
| IMM
| 775C
| Riostra 1-Tm
|
1425 |
5 |
| IMM
| 779C
| Riostra 2-Tm
|
1875 |
9 |
| IMM
| 878H
| Soporte Riostra
|
54 |
223 |
| IMM
| 887P
| Perno Riostra
|
250 |
24 |

19

Comandos MySQL

BSD

| IMM
| 887X
| Retenedor Riostra |
475 |
32 |
| QSA
| XK47
| Reductor
|
355 |
38 |
| QSA
| XK48
| Reductor
|
134 |
203 |
| QSA
| XK48A
| Reductor
|
117 |
37 |
| REI
| 2A44G
| Pasador Bisagra
|
350 |
14 |
| REI
| 2A44L
| Bisagra Izqda.
|
4500 |
12 |
| REI
| 2A44R
| Bisagra Dcha.
|
4500 |
12 |
| REI
| 2A45C
| V Stago Trinquete |
79 |
210 |
+-------+------------+-------------------+--------+-------------+
25 rows in set (0.00 sec)
empresaJCbis>

64. Muestra ciudad y regin de las oficinas.


empresaJCbis>select ciudad, region from oficinas;
+-------------+--------+
| ciudad
| region |
+-------------+--------+
| Chicago
| Este
|
| Atlanta
| Este
|
| Los Angeles | Oeste |
| Denver
| Oeste |
| New York
| Este
|
+-------------+--------+
5 rows in set (0.00 sec)
empresaJCbis>

65. Muestra nombre y edad (como aos) de los empleados.


empresaJCbis>select Nombre, Edad as aos from repventas;
+---------------+-------+
| Nombre
| aos |
+---------------+-------+
| Dan Roberts
|
45 |
| Sue Smith
|
48 |
| Paul Cruz
|
29 |
| Bob Smith
|
33 |
| Bill Adams
|
37 |
| Nancy Angelli |
49 |
| Larry Fitch
|
62 |
| Mary Jones
|
31 |
| Sam Clark
|
52 |
| Tom Snyder
|
41 |
+---------------+-------+
10 rows in set (0.00 sec)
empresaJCbis>

20

BSD

Comandos MySQL

66. Obtener las regiones (distintas, sin repetir) de las oficinas.


empresaJCbis>select distinct region from oficinas;
+--------+
| region |
+--------+
| Este
|
| Oeste |
+--------+
2 rows in set (0.00 sec)
empresaJCbis>

67. Muestra todos los empleados.


empresaJCbis>select * from repventas;
+---------+---------------+------+------------+------------+------------+----------+-------+--------+
| Numempl | Nombre
| Edad | Oficinarep | Titulo
| Contrato
| Director | Cuota |
Ventas |
+---------+---------------+------+------------+------------+------------+----------+-------+--------+
|
101 | Dan Roberts
|
45 |
11 | Rep Ventas | 1986-10-20 |
104 | 257143 |
305673 |
|
102 | Sue Smith
|
48 |
21 | Rep Ventas | 1989-12-10 |
108 | 350000 |
474050 |
|
103 | Paul Cruz
|
29 |
11 | Rep Ventas | 1987-03-01 |
104 | 235715 |
286775 |
|
104 | Bob Smith
|
33 |
12 | Dir Ventas | 1987-05-19 |
106 | 200000 |
142594 |
|
105 | Bill Adams
|
37 |
13 | Rep Ventas | 1988-02-12 |
104 | 350000 |
367911 |
|
107 | Nancy Angelli |
49 |
22 | Rep Ventas | 1988-11-14 |
108 | 300000 |
186042 |
|
108 | Larry Fitch
|
62 |
21 | Dir Ventas | 1989-10-12 |
106 | 350000 |
361865 |
|
109 | Mary Jones
|
31 |
11 | Rep Ventas | 1989-10-12 |
106 | 300000 |
392725 |
|
106 | Sam Clark
|
52 |
11 | VP Ventas | 1988-06-14 |
NULL | 275000 |
299912 |
|
110 | Tom Snyder
|
41 |
NULL | Rep Ventas | 1990-01-13 |
101 |
NULL |
75985 |
+---------+---------------+------+------------+------------+------------+----------+-------+--------+
10 rows in set (0.00 sec)
empresaJCbis>

68. Obtener todos los ttulos (distintos) de lo empleados.


empresaJCbis>select Titulo <> Numempl
+-------------------+
| Titulo <> Numempl |
+-------------------+
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
|
1 |
+-------------------+

from repventas;

21

Comandos MySQL

BSD

10 rows in set, 10 warnings (0.00 sec)

69. Lista nombre y objetivo (diferencia entre cuota y ventas)


de los empleados.
empresaJCbis>select nombre, cuota, (cuota-ventas) as resultado from repventas;
+---------------+--------+-----------+
| nombre
| cuota | resultado |
+---------------+--------+-----------+
| Dan Roberts
| 257143 |
-48530 |
| Sue Smith
| 350000 |
-124050 |
| Paul Cruz
| 235715 |
-51060 |
| Bob Smith
| 200000 |
57406 |
| Bill Adams
| 350000 |
-17911 |
| Nancy Angelli | 300000 |
113958 |
| Larry Fitch
| 350000 |
-11865 |
| Mary Jones
| 300000 |
-92725 |
| Sam Clark
| 275000 |
-24912 |
| Tom Snyder
|
NULL |
NULL |
+---------------+--------+-----------+
10 rows in set (0.00 sec)

70. Lista los nombres, oficinas y fechas de contrato de todos


los vendedores.
empresaJCbis>select Nombre, oficinarep, contrato from repventas;
+---------------+------------+------------+
| Nombre
| oficinarep | contrato
|
+---------------+------------+------------+
| Dan Roberts
|
11 | 1986-10-20 |
| Sue Smith
|
21 | 1989-12-10 |
| Paul Cruz
|
11 | 1987-03-01 |
| Bob Smith
|
12 | 1987-05-19 |
| Bill Adams
|
13 | 1988-02-12 |
| Nancy Angelli |
22 | 1988-11-14 |
| Larry Fitch
|
21 | 1989-10-12 |
| Mary Jones
|
11 | 1989-10-12 |
| Sam Clark
|
11 | 1988-06-14 |
| Tom Snyder
|
NULL | 1990-01-13 |
+---------------+------------+------------+
10 rows in set (0.01 sec)
empresaJCbis>

22

Comandos MySQL

BSD

71. Lista la ciudad, objetivo y ventas de las oficinas.


empresaJCbis>select Ciudad, Objetivo, ventas from oficinas;
+-------------+----------+--------+
| Ciudad
| Objetivo | ventas |
+-------------+----------+--------+
| Chicago
|
800000 | 735042 |
| Atlanta
|
350000 | 367911 |
| Los Angeles |
725000 | 835915 |
| Denver
|
300000 | 186042 |
| New York
|
575000 | 692637 |
+-------------+----------+--------+
5 rows in set (0.03 sec)
empresaJCbis>

72. Lista los nombres, cuotas y directores de los vendedores.


empresaJCbis>select Nombre, Cuota, Director from repventas;
+---------------+--------+----------+
| Nombre
| Cuota | Director |
+---------------+--------+----------+
| Dan Roberts
| 257143 |
104 |
| Sue Smith
| 350000 |
108 |
| Paul Cruz
| 235715 |
104 |
| Bob Smith
| 200000 |
106 |
| Bill Adams
| 350000 |
104 |
| Nancy Angelli | 300000 |
108 |
| Larry Fitch
| 350000 |
106 |
| Mary Jones
| 300000 |
106 |
| Sam Clark
| 275000 |
NULL |
| Tom Snyder
|
NULL |
101 |
+---------------+--------+----------+
10 rows in set (0.00 sec)
empresaJCbis>

73. Lista la ciudad, regin y ventas de las oficinas.


empresaJCbis>select Ciudad, Region, ventas from oficinas;
+-------------+--------+--------+
| Ciudad
| Region | ventas |
+-------------+--------+--------+
| Chicago
| Este
| 735042 |
| Atlanta
| Este
| 367911 |
| Los Angeles | Oeste | 835915 |
| Denver
| Oeste | 186042 |
| New York
| Este
| 692637 |
+-------------+--------+--------+
5 rows in set (0.00 sec)

23

Comandos MySQL

BSD

74. Lista la ciudad, region y la diferencia entre ventas y


objetivo (llmalo resultado) para cada oficina.
empresaJCbis>select Ciudad, Region, (ventas-objetivo) as resultado from oficinas;
+-------------+--------+-----------+
| Ciudad
| Region | resultado |
+-------------+--------+-----------+
| Chicago
| Este
|
-64958 |
| Atlanta
| Este
|
17911 |
| Los Angeles | Oeste |
110915 |
| Denver
| Oeste |
-113958 |
| New York
| Este
|
117637 |
+-------------+--------+-----------+
5 rows in set (0.00 sec)
empresaJCbis>

75. Muestra los identificadores de cada producto, su


descripcin y valor (existencias por precio) de cada
producto almacenado.
empresaJCbis>select idproducto, descripcion, precio from productos order by precio;
+------------+-------------------+--------+
| idproducto | descripcion
| precio |
+------------+-------------------+--------+
| 4100X
| Ajustador
|
25 |
| 878H
| Soporte Riostra
|
54 |
| 41001
| Articulo Tipo 1
|
55 |
| 41002
| Articulo Tipo 2
|
76 |
| 2A45C
| V Stago Trinquete |
79 |
| 41003
| Articulo Tipo 3
|
107 |
| XK48A
| Reductor
|
117 |
| 41004
| Articulo Tipo 4
|
117 |
| XK48
| Reductor
|
134 |
| 112
| Cubierta
|
148 |
| 41672
| Placa
|
180 |
| 41089
| Reten
|
225 |
| 114
| Bancada Motor
|
243 |
| 887P
| Perno Riostra
|
250 |
| 2A44G
| Pasador Bisagra
|
350 |
| XK47
| Reductor
|
355 |
| 887X
| Retenedor Riostra |
475 |
| 41003
| Manivela
|
652 |
| 773C
| Riostra 1/2 Tm
|
975 |
| 775C
| Riostra 1-Tm
|
1425 |
| 779C
| Riostra 2-Tm
|
1875 |
| 4100Z
| Montador
|
2500 |
| 4100Y
| Extractor
|
2750 |

24

Comandos MySQL

BSD

| 2A44L
| Bisagra Izqda.
|
4500 |
| 2A44R
| Bisagra Dcha.
|
4500 |
+------------+-------------------+--------+
25 rows in set (0.00 sec)

76. Lista el nombre, el mes y el ao de contrato de cada


vendedor.
empresaJCbis>select nombre, contrato from repventas;
+---------------+------------+
| nombre
| contrato
|
+---------------+------------+
| Dan Roberts
| 1986-10-20 |
| Sue Smith
| 1989-12-10 |
| Paul Cruz
| 1987-03-01 |
| Bob Smith
| 1987-05-19 |
| Bill Adams
| 1988-02-12 |
| Nancy Angelli | 1988-11-14 |
| Larry Fitch
| 1989-10-12 |
| Mary Jones
| 1989-10-12 |
| Sam Clark
| 1988-06-14 |
| Tom Snyder
| 1990-01-13 |
+---------------+------------+
10 rows in set (0.00 sec)

77. Lista las ventas para cada ciudad apareciendo en medio el


mensaje tiene ventas de
-- WHERE
-- >,<,=
empresaJCbis>select ventas as 'tiene ventas de' from repventas;
+-----------------+
| tiene ventas de |
+-----------------+
|
305673 |
|
474050 |
|
286775 |
|
142594 |
|
367911 |
|
186042 |
|
361865 |
|
392725 |
|
299912 |
|
75985 |
+-----------------+

25

Comandos MySQL

BSD

10 rows in set (0.00 sec)

78. Listar oficinas cuyas ventas exceden el objetivo.


empresaJCbis>select oficina from oficinas where (objetivo<ventas);
+---------+
| oficina |
+---------+
|
13 |
|
21 |
|
11 |
+---------+
3 rows in set (0.00 sec)
empresaJCbis>

79. Mostrar el nombre, cuota y ventas del vendedor nmero


105.
empresaJCbis>select nombre, cuota, ventas from repventas where (numempl=105);
+------------+--------+--------+
| nombre
| cuota | ventas |
+------------+--------+--------+
| Bill Adams | 350000 | 367911 |
+------------+--------+--------+
1 row in set (0.02 sec)
empresaJCbis>

80. Listar nombre y ventas de los empleados que estn


dirigidos por el empleado nmero104.
empresaJCbis>select nombre, ventas from repventas where (numempl=104);
+-----------+--------+
| nombre
| ventas |
+-----------+--------+
| Bob Smith | 142594 |
+-----------+--------+
1 row in set (0.00 sec)
empresaJCbis>

26

Comandos MySQL

BSD

81. Lista de los vendedores contratados antes de 2006.


empresaJCbis>select nombre, contrato from repventas where (contrato<2006-01-01);
Empty set, 1 warning (0.00 sec)
empresaJCbis>

82. Lista oficinas cuyas ventas estn por debajo del 80% del
objetivo.
83. Lista de oficinas no dirigidas por el empleado 108
empresaJCbis>select oficina from oficinas where (oficina<>108);
+---------+
| oficina |
+---------+
|
11 |
|
12 |
|
13 |
|
21 |
|
22 |
+---------+
5 rows in set (0.00 sec)
empresaJCbis>

84. Seleccionar el nombre y lmite de crdito del cliente


nmero 2107.
empresaJCbis>select numclie, limitecredito from clientes where (numclie=2107);
+---------+---------------+
| numclie | limitecredito |
+---------+---------------+
|
2107 |
35000 |
+---------+---------------+
1 row in set (0.01 sec)

85. Lista de nombres de vendedores que superan sus ventas


las cuotas.
empresaJCbis>select nombre, ventas, cuota from repventas where (ventas=cuota);
Empty set (0.00 sec)

27

Comandos MySQL

BSD

86. Lista de nombres de vendedores que no superan sus


ventas las cuotas.
empresaJCbis>select nombre, ventas, cuota from repventas where (ventas<cuota);
+---------------+--------+--------+
| nombre
| ventas | cuota |
+---------------+--------+--------+
| Bob Smith
| 142594 | 200000 |
| Nancy Angelli | 186042 | 300000 |
+---------------+--------+--------+
2 rows in set (0.00 sec)

87. Lista la ciudad, objetivo y ventas de las oficinas de la


regin Eastern.
empresaJCbis>select ciudad, objetivo, region, ventas from oficinas where (region=Este);

88. Mostrar el nombre, cuota y ventas del vendedor nmero


107.
empresaJCbis>select nombre, cuota, ventas, numempl from repventas where(numempl=107);
+---------------+--------+--------+---------+
| nombre
| cuota | ventas | numempl |
+---------------+--------+--------+---------+
| Nancy Angelli | 300000 | 186042 |
107 |
+---------------+--------+--------+---------+
1 row in set (0.00 sec)
empresaJCbis>

89. Lista el nombre y fecha de contrato de los vendedores con


ventas superiores a 500000.
empresaJCbis>select nombre, contrato, ventas from repventas where (ventas>500000);
Empty set (0.00 sec)

-- IS NULL

90. Listar empleados que no tienen director.


empresaJCbis>select nombre, director from repventas where (director=null);
Empty set (0.00 sec)
empresaJCbis>

91. Listar empleados que no tienen oficina asignada.

28

Comandos MySQL

BSD

-- BETWEEN

92. Hallar los nmeros de los pedidos realizados en enero de


2008.
93.Hallar el nmero e importe de los pedidos cuyo importe
est entre 20000 y 30000.
empresaJCbis>select numpedido, importe between 20000 and 30000 from pedidos;
+-----------+---------------------------------+
| numpedido | importe between 20000 and 30000 |
+-----------+---------------------------------+
|
112963 |
0 |
|
112979 |
0 |
|
110036 |
1 |
|
112968 |
0 |
|
112983 |
0 |
|
112987 |
1 |
|
112989 |
0 |
|
112961 |
0 |
|
112997 |
0 |
|
113003 |
0 |
|
113007 |
0 |
|
113012 |
0 |
|
113013 |
0 |
|
113024 |
0 |
|
113027 |
0 |
|
113042 |
1 |
|
113045 |
0 |
|
113048 |
0 |
|
113049 |
0 |
|
113051 |
0 |
|
113055 |
0 |
|
113057 |
0 |
|
113058 |
0 |
|
113062 |
0 |
|
113065 |
0 |
|
113069 |
0 |
|
113034 |
0 |
|
112992 |
0 |
|
112975 |
0 |
|
112993 |
0 |
+-----------+---------------------------------+
30 rows in set (0.00 sec)

29

Comandos MySQL

BSD

94. Listar el nombre de los vendedores cuyas ventas estn


entre el 70 y el 90 por ciento de su cuota.
-- IN

95. Lista los vendedores que trabajan en New York, Chicago o


Atlanta
empresaJCbis>select nombre, oficinarep between 11 and 13 from repventas;
+---------------+------------------------------+
| nombre
| oficinarep between 11 and 13 |
+---------------+------------------------------+
| Dan Roberts
|
1 |
| Sue Smith
|
0 |
| Paul Cruz
|
1 |
| Bob Smith
|
1 |
| Bill Adams
|
1 |
| Nancy Angelli |
0 |
| Larry Fitch
|
0 |
| Mary Jones
|
1 |
| Sam Clark
|
1 |
| Tom Snyder
|
NULL |
+---------------+------------------------------+
10 rows in set (0.00 sec)

96. Listar los nmeros de los pedidos obtenidos por los


vendedores 107,109,101 y 104.

30

Comandos MySQL

BSD

------->Ms avanzado:pedidos de empleados de ms de 40


aos
-- LIKE
97. Mostrar el lmite de crdito de Ace International
98. Mostrar los nombres de los clientes que son Inc.
-- AND,OR,NOT
99. Listar los nombres de los vendedores que estn por
debajo de la cuota o con ventas inferiores a 300000 euros.
empresaJCbis>select nombre from repventas where (cuota>ventas) or (ventas<=300000);
+---------------+
| nombre
|
+---------------+
| Paul Cruz
|
| Bob Smith
|
| Nancy Angelli |
| Sam Clark
|
| Tom Snyder
|
+---------------+
5 rows in set (0.00 sec)

100. Listar los nombres de los vendedores que estn por


debajo de la cuota y con ventas inferiores a 300000 euros.
empresaJCbis>select nombre from repventas where (cuota>ventas) and (ventas<300000);
+---------------+
| nombre
|
+---------------+
| Bob Smith
|
| Nancy Angelli |
+---------------+
2 rows in set (0.00 sec)

31

Comandos MySQL

BSD

101. Listar los nombres de los vendedores que estn por


debajo de la cuota pero cuyas ventas no son inferiores a
300000 euros.
empresaJCbis>select nombre from repventas where (cuota>ventas) and (ventas>300000);
Empty set (0.00 sec)

102. Hallar todos los vendedores que cumplen todo lo


siguiente a la vez:
a)Trabajan en Denver, New York o Chicago
empresaJCbis>select nombre from repventas where (oficinarep=22) and (oficinarep=11) and
(oficinarep=12) and (contrato>2005) and (ventas>cuota);
Empty set, 1 warning (0.00 sec)

b)Su contrato es posterior a 2005


c) Sus ventas estn por encima de la cuota
-- ORDER BY
103. Lista los nombres de los empleados ordenados
ascendentemente.
empresaJCbis>select nombre from repventas order by nombre;
+---------------+
| nombre
|
+---------------+
| Bill Adams
|
| Bob Smith
|
| Dan Roberts
|
| Larry Fitch
|
| Mary Jones
|
| Nancy Angelli |
| Paul Cruz
|
| Sam Clark
|
| Sue Smith
|
| Tom Snyder
|
+---------------+

32

Comandos MySQL

BSD

10 rows in set (0.00 sec)

104. Lista los nombres de los empleados por edad


ascendente.
empresaJCbis>select nombre, edad from repventas order by edad;
+---------------+------+
| nombre
| edad |
+---------------+------+
| Paul Cruz
|
29 |
| Mary Jones
|
31 |
| Bob Smith
|
33 |
| Bill Adams
|
37 |
| Tom Snyder
|
41 |
| Dan Roberts
|
45 |
| Sue Smith
|
48 |
| Nancy Angelli |
49 |
| Sam Clark
|
52 |
| Larry Fitch
|
62 |
+---------------+------+
10 rows in set (0.00 sec)

105. Lista los nombres y edad de los empleados por edad


descendente.
empresaJCbis>select nombre, edad from repventas order by edad desc;
+---------------+------+
| nombre
| edad |
+---------------+------+
| Larry Fitch
|
62 |
| Sam Clark
|
52 |
| Nancy Angelli |
49 |
| Sue Smith
|
48 |
| Dan Roberts
|
45 |
| Tom Snyder
|
41 |
| Bill Adams
|
37 |
| Bob Smith
|
33 |
| Mary Jones
|
31 |
| Paul Cruz
|
29 |
+---------------+------+
10 rows in set (0.00 sec)

106. Lista las regiones ascendentemente y ciudades


descendentemente de las oficinas.
empresaJCbis>select ciudad, region from oficinas order by oficina and ciudad desc;
+-------------+--------+
| ciudad
| region |
+-------------+--------+
| Chicago
| Este
|
| Atlanta
| Este
|
| Los Angeles | Oeste |
| Denver
| Oeste |
| New York
| Este
|
+-------------+--------+
5 rows in set, 5 warnings (0.00 sec)

33

Comandos MySQL

BSD

107. Lista la ciudad, objetivo y ventas de las oficinas de la


regin Eastern cuyas ventas exceden a sus objetivos,
ordenadas alfabticamente por ciudad.

108. Listar ciudades y resultado (ventas-objetivo)


descendentemente por resultado.
empresaJCbis>select ciudad, (ventas-objetivo) as resultado from oficinas order by resultado
desc;
+-------------+-----------+
| ciudad
| resultado |
+-------------+-----------+
| New York
|
117637 |
| Los Angeles |
110915 |
| Atlanta
|
17911 |
| Chicago
|
-64958 |
| Denver
|
-113958 |
+-------------+-----------+
5 rows in set (0.00 sec)
empresaJCbis>

34

You might also like