Tarea Querys Sql de Wilmer Alcivar
Upcoming SlideShare
Loading in...5
×
 

Tarea Querys Sql de Wilmer Alcivar

on

  • 2,494 views

Tarea de SQL de Wilmer Alcivar

Tarea de SQL de Wilmer Alcivar

Statistics

Views

Total Views
2,494
Views on SlideShare
2,494
Embed Views
0

Actions

Likes
1
Downloads
126
Comments
0

0 Embeds 0

No embeds

Accessibility

Upload Details

Uploaded via as Microsoft Word

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Tarea Querys Sql de Wilmer Alcivar Tarea Querys Sql de Wilmer Alcivar Document Transcript

  • 1.- Mostrar todas las ciudades sin repetirse de la tabla employee, y Muéstrelas en orden ascendente. SELECT DISTINCT city from "employee" ORDER BY city 2.- Mostrar el primer y segundo nombre concatenados de todos los Empleados de sexo femenino de la tabla employee SELECT emp_fname + ' ' + emp_lname AS empleado FROM "employee" where sex = 'F' 3.- Mostrar el primer y segundo nombre junto con el 8% del salario de Todos los empleados de la tabla employee SELECT emp_fname,emp_lname,salary*0.08 FROM "employee" 4.- Mostrar la dirección, la ciudad y el estado (provincia) de cada Empleado, concatene estos 3 campos y llame a este nuevo campo Dirección completa, y muéstrelos por estado. SELECT street + ' ' + city + ' ' + state AS Direccion_Completa FROM "employee" order by state 5.- Contar cuantas ciudades hay en la tabla employee y que no estén Considerando empleados que tengan salarios entre 40000 y 50000 SELECT DISTINCT salary, COUNT(city) AS myCity FROM "employee" where salary NOT BETWEEN '40000' AND '50000' GROUP BY salary 6.- Indique cuantos empleados hay por ciudad y cual es el salario promedio de cada ciudad agrupado por ciudad SELECT DISTINCT city, AVG(salary) AS prom_sala_city, COUNT(emp_id) AS num_Empleado FROM "employee" group by city order by city 7.- Especifique el valor mínimo, máximo, promedio y la suma total del salario por estado siempre y cuando el promedio del estado sea mayor a 30000 SELECT DISTINCT state, MIN(salary) AS min_salary, MAX(salary) AS max_salary, AVG(salary) AS prom_salary, SUM(salary) AS sum_salary
  • FROM "employee" group by state having AVG(salary)>30000 order by state 8.- Usando la cláusula IN en el WHERE, indique cuales son los empleados que están en el estado de NY, UT y GA SELECT emp_fname,emp_lname,state FROM "employee" where state IN('NY','UT','GA') 9.- Cuantos empleados comienzan el nombre con la letra A y tengan 4 o 5 caracteres SELECT distinct emp_fname,COUNT(emp_id) AS num_empleado FROM "employee" where emp_fname LIKE 'A___' or emp_fname LIKE 'A____' group by emp_fname order by emp_fname 10.- Revise la tabla employee e indique cual es la forma de escribir el WHERE para saber en la columna “termination_date” por NULL SELECT * FROM "employee" where termination_date IS NULL 11.- Cuales son los empleados que su sueldo sea menor que el promedio del salario SELECT emp_fname, emp_lname,salary FROM "employee" where salary < (select AVG(salary) from "employee") 12.- Indique los nombres de los empleados que trabajan en el departamento “R & D” SELECT emp_fname, emp_lname FROM "employee" where dept_id = (select dept_id from "department" where dept_name='R & D')
  • 13.- Determinar todos los empleados que su salario sea superior a los que viven en la ciudad “Milton” SELECT emp_fname, emp_lname, salary FROM "employee" where salary > some(select salary from "employee" where city = 'Milton') 14.- Saber todos los empleados que su salario sea superior a todos los salarios de los empleados que viven en “Milton” SELECT emp_fname, emp_lname, salary FROM "employee" where salary > ALL(select salary from "employee" where city = 'Milton') 15.- Determine el nombre de los productos que han sido comprados por un cliente SELECT DISTINCT cus.fname, cus.lname, pro.name FROM "customer" cus, "sales_order" sal, "product" pro where cus.id = sal.cust_id group by cus.fname, cus.lname, pro.name order by cus.fname 16- Indique cual es el salario total por departamento SELECT Distinct dep.dept_name, SUM(emp.salary) AS total FROM "employee" emp, "department" dep where emp.dept_id = dep.dept_id group by dep.dept_name 17- Cual es la expresión equivalente para el “SUM” y el “ALL” SELECT 18.- Mostrar los nombres de todos los empleados si existe alguien que gane más de 80000 y que viva en la ciudad de “Milton” SELECT emp_fname, emp_lname, salary FROM "employee" where exists (select emp_fname, emp_lname from "employee" where salary > 80000 and city = 'Milton')
  • 19.- Unir el nombre de los empleados y el nombre de los customer SELECT emp_fname, emp_lname FROM "employee" union (select fname,lname from "customer") 20.- Cuales son las ciudades comunes entre estas 2 entidades SELECT city FROM "employee" intersect (select city from "contact") 21.- Cuales son las ciudades que tienen los empleados y no los contactos SELECT city FROM "employee" except (select city from "contact") 22.- Crear una tabla llamada “Contact_Copy” y llenarla con los datos de la tabla Contact INSERT INTO contact_Copy (SELECT * FROM contact) 23.- Inserte un nuevo registro que no este en la tabla Contact INSERT INTO contact_Copy (id,last_name,first_name,title,street,state,city,zip,phone,fax) VALUES(100,'alcivar','wilmer','pd','qweasdq','guayaquil','gu','1234','5675675','1231231' ) 24.- Borre los registros de la tabla Contact_Copy delete from contact_Copy 25.- Haga el Quero 22 otra vez y borre los contactos de las ciudades que comienzan con N, L y K delete from contact_Copy where city like 'N%' or city like 'L%' or city like 'K%'
  • 26.- Crear una tabla llamada “Employee_Copy” y llenarla con los datos de la tabla Employee INSERT INTO employee_copy (SELECT * FROM employee) 27.- Borre en la tabla Employee_Copy aquellos que su salario sea < a la mitad del promedio delete from employee_copy where salary < (select avg(salary) from employee_copy) 28.- Actualice los salarios en un 20% de la tabla Employee_Copy update employee_copy set salary = salary + salary*0.20 29.- Actualice los salarios en un 10% solo a los de genero femenino y reste 1000 a los salarios que sea > al promedio update employee_copy set salary = salary + salary*0.10 where sex = 'F' update employee_copy set salary = salary-10000 where salary > (select avg(salary) from employee_copy) 30.- Presentar el nombre del empleado y su jefe (select recursivo) select emp.emp_fname, man.emp_fname from "employee" emp, "employee" man where emp.manager_id = man.emp_id 31.- Querys DDL del negocio GUITAR’S HOUSE CREATE TABLE TB_BODEGA ( id_bodega char(30) not null , nombre char(30) not null , capacidad char(30) , descripcion char(30), PRIMARY KEY (id_bodega) )
  • CREATE TABLE "TB_CATEGORIA" ( "id_categoria" char(30) NOT NULL , "nombre" char(30), "descripcion" char(30), PRIMARY KEY ("id_categoria") ) CREATE TABLE "TB_CLIENTE" ( "cedula" char(30) NOT NULL, "nombre" char(30) NOT NULL, "apellidos" char(30) NOT NULL, "telefono1" char(30), "telefono2" char(30), "direccion" char(30), "email" char(30), PRIMARY KEY ("cedula") ) CREATE TABLE "TB_DETALLE_ABASTECIMIENTO" ( "id_det_abas" char(30) NOT NULL, "descripcion" char(30) , "cantidad" char(30), "id_item" char(30), "id_abastecimiento" char(30), PRIMARY KEY ("id_det_abas"), ) CREATE TABLE "TB_DETALLE_ENTREGA" ( "id_detalle_entrega" char(30) NOT NULL, "cantidad" char(30) NOT NULL, "precio_unitario" char(30) NOT NULL, "total" char(30) NOT NULL, "id_entrega" char(30) NOT NULL, "id_item" char(30) NOT NULL, PRIMARY KEY ("id_detalle_entrega"), ) CREATE TABLE "TB_DETALLE_FACTURA" ( "id_detalle_factura" char(30) NOT NULL, "cantidad" char(30) NOT NULL, "precio_unitario" char(30) NOT NULL, "total" char(30) NOT NULL, "id_item" char(30) NOT NULL, "id_factura" char(30) NOT NULL, PRIMARY KEY ("id_detalle_factura") )
  • CREATE TABLE "TB_DETALLE_PEDIDO" ( "id_detalle_pedido" char(30) NOT NULL , "cantidad" char(30) NOT NULL, "precio_unitario" char(30) NOT NULL, "total" char(30) NOT NULL, "id_item" char(30) NOT NULL, "id_pedido" char(30) NOT NULL, PRIMARY KEY ("id_detalle_pedido") ) CREATE TABLE "TB_EMPLEADO" ( "cedula" char(30) NOT NULL, "nombre" char(30) NOT NULL, "apellidos" char(30) NOT NULL, "telefono1" char(30), "telefono2" char(30), "direccion" char(30), "email" char(30), "cargo" char(30), "id_jefe" char(30) NOT NULL, "usuario" char(30) NOT NULL, PRIMARY KEY ("cedula") ) CREATE TABLE "TB_ENTREGA" ( "id_entrega" char(30) NOT NULL , "fecha_entrega" char(30) NOT NULL, "hora_entrega" char(30) NOT NULL, "cantidad" char(30) NOT NULL, "id_cliente" char(30) NOT NULL, "id_empleado" char(30) NOT NULL, PRIMARY KEY ("id_entrega") ) CREATE TABLE "TB_FACTURA" ( "id_factura" char(30) NOT NULL , "tipo_pago" char(30) NOT NULL, "hora_pago" char(30) NOT NULL, "fecha_pago" char(30) NOT NULL, "sub_total" char(30) NOT NULL, "iva" char(30) NOT NULL, "total_a_pagar" char(30) NOT NULL, "id_cliente" char(30) NOT NULL, "id_empleado" char(30) NOT NULL, PRIMARY KEY ("id_factura") )
  • CREATE TABLE "TB_ITEM" ( "id_item" char(30) NOT NULL , "nombre" char(30) NOT NULL, "descripcion" char(30) NOT NULL, "stock" char(30) NOT NULL, "precio_cliente" char(30) NOT NULL, "precio_proveedor" char(30) NOT NULL, "id_categoria" char(30) NOT NULL, "id_bodega" char(30) NOT NULL, PRIMARY KEY ("id_item") ) CREATE TABLE "TB_PEDIDO" ( "id_pedido" char(30) NOT NULL , "fecha_pedido" char(30) NOT NULL, "hora_pedido" char(30) NOT NULL, "id_cliente" char(30) NOT NULL, "id_empleado" char(30) NOT NULL, PRIMARY KEY ("id_pedido") ) CREATE TABLE "TB_PROVEEDOR" ( "ruc" char(30) NOT NULL, "nombre" char(30) NOT NULL, "direccion" char(30) NOT NULL, "telefono1" char(30), "telefono2" char(30), "email" char(30), "descripcion" char(30), PRIMARY KEY ("ruc") ) CREATE TABLE "TB_USER" ( "usuario" char(30) NOT NULL , "contrasenia" char(30) NOT NULL, PRIMARY KEY ("usuario") ) ALTER TABLE TB_EMPLEADO ADD FOREIGN KEY ("id_jefe") REFERENCES TB_EMPLEADO("cedula") ALTER TABLE TB_ENTREGA ADD FOREIGN KEY (ID_CLIENTE) REFERENCES TB_CLIENTE(cedula) ALTER TABLE TB_ENTREGA ADD FOREIGN KEY (ID_EMPLEADO) REFERENCES TB_EMPLEADO(cedula) ALTER TABLE TB_ITEM ADD FOREIGN KEY (ID_BODEGA) REFERENCES TB_BODEGA(ID_BODEGA)
  • ALTER TABLE TB_ITEM ADD FOREIGN KEY (ID_CATEGORIA) REFERENCES TB_CATEGORIA(ID_CATEGORIA) ALTER TABLE TB_FACTURA ADD FOREIGN KEY (ID_CLIENTE) REFERENCES TB_CLIENTE(cedula) ALTER TABLE TB_FACTURA ADD FOREIGN KEY (ID_EMPLEADO) REFERENCES TB_EMPLEADO(cedula) ALTER TABLE TB_DETALLE_FACTURA ADD FOREIGN KEY (ID_DETALLE_FACTURA) REFERENCES TB_FACTURA(ID_FACTURA) ALTER TABLE TB_DETALLE_FACTURA ADD FOREIGN KEY (ID_ITEM) REFERENCES TB_ITEM(ID_ITEM) ALTER TABLE TB_EMPLEADO ADD FOREIGN KEY (USUARIO) REFERENCES TB_USER(USUARIO) ALTER TABLE TB_PEDIDO ADD FOREIGN KEY (ID_CLIENTE) REFERENCES TB_CLIENTE(cedula) ALTER TABLE TB_PEDIDO ADD FOREIGN KEY (ID_EMPLEADO) REFERENCES TB_EMPLEADO(cedula) ALTER TABLE TB_DETALLE_PEDIDO ADD FOREIGN KEY (ID_ITEM) REFERENCES TB_ITEM(ID_ITEM) ALTER TABLE TB_DETALLE_PEDIDO ADD FOREIGN KEY (ID_PEDIDO) REFERENCES TB_PEDIDO(ID_PEDIDO) ALTER TABLE TB_DETALLE_ENTREGA ADD FOREIGN KEY (ID_ITEM) REFERENCES TB_ITEM(ID_ITEM) ALTER TABLE TB_DETALLE_ENTREGA ADD FOREIGN KEY (ID_ENTREGA) REFERENCES TB_ENTREGA(ID_ENTREGA) 32.- Crear 2 tablas cada una con su (pk) y que ambas pk viajen de una tabla a otra, la (fk) en la primera tabla tiene que ser no null, y la (fk) en la seguna tabla tiene que ser null. CREATE TABLE "T_A" ( "a1" char(30) NOT NULL , "a2" char(30) NOT NULL, "a3" char(30) NOT NULL, "a4" char(30) NOT NULL, PRIMARY KEY ("a1") )
  • CREATE TABLE "T_B" ( "b1" char(30) NOT NULL , "b2" char(30) NOT NULL, "b3" char(30) NOT NULL, PRIMARY KEY ("b1") ) ALTER TABLE T_A ADD(b1 integer not null) ALTER TABLE T_B ADD(a1 integer) 33.- Crear 1 tabla con 3 columnas y 10 registros, la primera será la (pk), y luego eliminar una columna que no sea pk sin usar la sentencia “DROP COLUM”. CREATE TABLE "T_A2" ( "a1" char(30) NOT NULL , "a2" char(30) NOT NULL, "a3" char(30) NOT NULL, PRIMARY KEY ("a1") ) INSERT INTO T_A2 (a1,a2,a3)VALUES('100','wilmer','pd') INSERT INTO T_A2 (a1,a2,a3)VALUES('101','pepe','pa') INSERT INTO T_A2 (a1,a2,a3)VALUES('102','manuel','pb') INSERT INTO T_A2 (a1,a2,a3)VALUES('103','luis','pc') INSERT INTO T_A2 (a1,a2,a3)VALUES('104','nahun','pf') INSERT INTO T_A2 (a1,a2,a3)VALUES('105','roberto','pg') INSERT INTO T_A2 (a1,a2,a3)VALUES('106','miguel','ph') INSERT INTO T_A2 (a1,a2,a3)VALUES('107','julio','pi') INSERT INTO T_A2 (a1,a2,a3)VALUES('108','mauricio','pj') INSERT INTO T_A2 (a1,a2,a3)VALUES('109','efren','pk')*/ CREATE TABLE "copy_T_A2" ( "a1" char(30) NOT NULL , "a2" char(30) NOT NULL, PRIMARY KEY ("a1") ) INSERT INTO copy_T_A2 (SELECT a1,a2 FROM T_A2) drop table T_A2 alter table copy_T_A2 RENAME T_A2 34.- Crear 1 tabla con 3 columnas, y 10 registros, la primera será la (pk), y luego adherir una columna y hacerla (pk) junto con la otra (pk), es decir una clave compuesta. CREATE TABLE "T_A3" ( "a1" char(30) NOT NULL ,
  • "a2" char(30) NOT NULL, "a3" char(30) NOT NULL, PRIMARY KEY ("a1") ) INSERT INTO T_A3 (a1,a2,a3)VALUES('100','wilmer','pd') INSERT INTO T_A3 (a1,a2,a3)VALUES('101','pepe','pa') INSERT INTO T_A3 (a1,a2,a3)VALUES('102','manuel','pb') INSERT INTO T_A3 (a1,a2,a3)VALUES('103','luis','pc') INSERT INTO T_A3 (a1,a2,a3)VALUES('104','nahun','pf') INSERT INTO T_A3 (a1,a2,a3)VALUES('105','roberto','pg') INSERT INTO T_A3 (a1,a2,a3)VALUES('106','miguel','ph') INSERT INTO T_A3 (a1,a2,a3)VALUES('107','julio','pi') INSERT INTO T_A3 (a1,a2,a3)VALUES('108','mauricio','pj') INSERT INTO T_A3 (a1,a2,a3)VALUES('109','efren','pk') CREATE TABLE "copy_T_A3" ( "a1" char(30) NOT NULL , "a4" char(30) NOT NULL , "a2" char(30) NOT NULL, "a3" char(30) NOT NULL, PRIMARY KEY ("a1", "a4") ) INSERT INTO copy_T_A3 (SELECT a1,'200',a2,a3 FROM T_A3) drop table T_A3 alter table copy_T_A3 RENAME T_A3