Solución ejercicios tema 2. Las consultas simples


Ejercicio 1

SELECT idfab,idproducto,descripcion,precio, (precio * 1.16) AS iva_incluido
FROM productos

Los paréntesis son opcionales, también se puede poner como fórmula de cálculo: precio + precio * 16 /100.

Ejercicio 2

SELECT numpedido, fab, producto, cant, importe / cant AS precio_unitario, importe
FROM pedidos

 

Ejercicio 3

SELECT nombre, date() - contrato AS dias_trabajados, year(date()) - edad AS año_nacimiento
FROM empleados

Aquí hemos utilizado la función date() que devuelve el día actual y hemos utilizado la diferencia de fechas para saber cuántos días han transcurrido entre las dos fechas. Para saber el año de nacimiento restamos al año actual la edad del empleado. Para obtener el año actual aplicamos la función year() (que devuelve el año de una fecha) sobre la fecha actual (date())

Ejercicio 4

SELECT *
FROM clientes
ORDER BY repclie

 

Ejercicio 5

SELECT *
FROM oficinas
ORDER BY region, ciudad, oficina DESC

 

Ejercicio 6

SELECT *
FROM pedidos
ORDER BY fechapedido

 

Ejercicio 7

SELECT TOP 4 *
FROM pedidos
ORDER importe DESC

Para obtener las más caras tenemos que ordenar por importe y en orden descendente para que aparezca las más caras primero. Además como sólo queremos las cuatro primeras utilizamos la cláusula TOP 4.

Ejercicio 8

SELECT TOP 5 numpedido, fab, producto, cant, importe / cant AS precio_unitario, importe
FROM pedidos
ORDER BY 5

Ordenamos los pedidos por precio unitario utilizando el nº de columna, el precio unitario es la quinta columna dentro de la lista de selección. En este caso la ordenación debe ser ascendente.

Ejercicio 9

SELECT *
FROM pedidos
WHERE MONTH(fechapedido) = 3

MONTH(fecha) devuelve el número de mes de la fecha.

Ejercicio 10

SELECT numemp
FROM empleados
WHERE oficina IS NOT NULL

Los empleados que tienen asignada una oficina son los que tienen un valor en el campo oficina.

Ejercicio 11

SELECT oficina
FROM oficinas
WHERE dir IS NULL

El campo dir es el que nos dice quien es el director de la oficina.

Ejercicio 12

SELECT *
FROM oficinas
WHERE region IN ('norte','este')
ORDER BY region DESC

Los valores se ponen entre comillas simples o dobles ya que son valores alfanuméricos. También se puede poner WHERE region = 'norte' OR region = 'este'.
Ordenamos desc para que primero aparezcan las del norte.

Ejercicio 13

SELECT *
FROM empleados
WHERE nombre LIKE 'Julia *'

Los empleados cuyo nombre empiece por Julia, observar que antes del * hay un espacio en blanco para forzar a que el siguiente carácter después de la a sea un blanco y no coja por ejemplo Julian.

Ejercicio 14

SELECT *
FROM productos
WHERE idproducto LIKE '*x'

 

 




Página inicial  Cursos Informática Gratuitos

Síguenos en:   Facebook       Sobre aulaClic            Política de Cookies


© aulaClic. Todos los derechos reservados. Prohibida la reproducción por cualquier medio.