ORACLE 11G - 18 EJEMPLOS DE LENGUAJE ESTRUCTURADO DE CONSULTAS (SQL)

Imagen de pepochs

Tema: 

PRIMERO PASO: CREAR LA TABLA PRODUCTOS.

CREATE TABLE PRODUCTOS
   (            "C_PRODUCTOS" VARCHAR2(5 BYTE),
                "X_PRODUCTOS" VARCHAR2(90 BYTE),
                "N_STOCK" NUMBER,
                "M_COMPRA" NUMBER,
                "M_VENTA" NUMBER,
                "C_ESTADO" VARCHAR2(45 BYTE),
                "F_FECING" DATE,
                "M_MONEDA" VARCHAR2(1 BYTE),
                "N_VENDIO" NUMBER
   )

SEGUNDO PASO: DESCRIPCIÓN DE LA TABLA PRODUCTOS.

Campo.                  Tipo.                      Descripción.
C_PRODUCTOS   VARCHAR2(5)     Código del producto.
X_PRODUCTOS   VARCHAR2(90)   Descripción del producto.
N_STOCK              NUMBER             Stock actual del producto.
M_COMPRA         NUMBER              Precio de compra.
M_VENTA             NUMBER              Precio de venta.
C_ESTADO            VARCHAR2(45)   Estado del producto.
F_FECING             DATE                     Fecha de ingreso del producto.
M_MONEDA         VARCHAR2(1)     Moneda del producto.
N_VENDIO            NUMBER              Cantidad que se vendió el producto.

TERCER PASO: 18 EJEMPLOSE DE CONSULTA "SQL"

1) Mostrar en pantalla todos los campos de la tabla productos.
SELECT * FROM PRODUCTOS;

2) Mostrar los campos código, descripción, precio de venta de la tabla productos.
SELECT C_PRODUCTOS, X_PRODUCTOS, M_VENTA FROM PRODUCTOS;

3) Mostrar los campos código, descripción, fecha de ingreso, precio de compra de la tabla productos.
SELECT C_PRODUCTOS, X_PRODUCTOS, F_FECING, M_COMPRA FROM PRODUCTOS;

4) Mostrar todos los campos de la tabla productos y ordenarlo por código.
SELECT * FROM PRODUCTOS ORDER BY C_PRODUCTOS ASC;

5) Mostrar todos los campos de la tabla productos y ordenarlo por fecha de ingreso de manera ascendente.
SELECT * FROM PRODUCTOS ORDER BY F_FECING ASC;

6) Mostrar todos los campos de la tabla productos, ordenarlo por fecha de ingresa y nombre de manera ascendente.
SELECT * FROM PRODUCTOS ORDER BY F_FECING, X_PRODUCTOS ASC;

7) Mostrar todos los campos de la tabla productos del año 2014.
SELECT * FROM PRODUCTOS WHERE EXTRACT(YEAR FROM F_FECING)='2014';

8) Mostrar todos los campos de la tabla productos de los años 2015, 2016 y ordenarlo por fecha, nombres.
SELECT * FROM PRODUCTOS WHERE EXTRACT(YEAR FROM F_FECING) IN ('2015','2016') ORDER BY F_FECING, X_PRODUCTOS ASC;

9) Mostrar todos los campos de la tabla productos que empiecen con la letra “A”.
SELECT * FROM PRODUCTOS WHERE X_PRODUCTOS LIKE 'A%';

10) Mostrar todos los campos de la tabla productos que empiecen con la letra “M” y ordenarlo por la fecha de ingreso de manera ascendente.
SELECT * FROM PRODUCTOS WHERE X_PRODUCTOS LIKE 'M%' ORDER BY F_FECING ASC;

11) Mostrar todos los campos de la tabla productos que empiecen con las “I” y “T”.
SELECT * FROM PRODUCTOS WHERE (X_PRODUCTOS LIKE 'I%') OR (X_PRODUCTOS LIKE 'T%') ORDER BY X_PRODUCTOS ASC;

12) Mostrar todos los campos de la tabla productos desde la letra “M” hasta la “R”.
SELECT * FROM PRODUCTOS WHERE SUBSTR(X_PRODUCTOS,1,1) BETWEEN 'M' AND 'R' ORDER BY X_PRODUCTOS ASC;

13) Mostrar en pantalla el monto total del precio de venta del año 2015.
SELECT SUM(M_VENTA) AS "MONTO TOTAL" FROM PRODUCTOS WHERE EXTRACT(YEAR FROM F_FECING)='2015';

14) Mostrar en pantalla los monto totales de los precios de venta del año 2014, 2015, 2016.
SELECT EXTRACT(YEAR FROM F_FECING) AS "AÑO", SUM(M_VENTA) AS "MONTO TOTAL" FROM PRODUCTOS WHERE EXTRACT(YEAR FROM F_FECING) IN ('2014','2015','2016') GROUP BY EXTRACT(YEAR FROM F_FECING) ;

15) Mostrar en pantalla el producto con el precio de compra más caro.
SELECT * FROM PRODUCTOS WHERE M_COMPRA IN (SELECT MAX(M_COMPRA) FROM PRODUCTOS);

16) Mostrar en pantalla un producto mayor vendido y un producto menos vendido.
SELECT * FROM PRODUCTOS WHERE N_VENDIO IN (SELECT MAX(N_VENDIO) FROM PRODUCTOS) OR N_VENDIO IN (SELECT MIN(N_VENDIO) FROM PRODUCTOS) ORDER BY N_VENDIO DESC;

17) Mostrar en pantalla los productos del primer semestre del año 2016.
SELECT * FROM PRODUCTOS WHERE EXTRACT(YEAR FROM F_FECING)='2016' AND ( EXTRACT(MONTH FROM F_FECING) BETWEEN '01' AND '06') ORDER BY F_FECING ASC;

18) Mostrar en pantalla los productos del primer trimestre del año 2015.
SELECT * FROM PRODUCTOS WHERE EXTRACT(YEAR FROM F_FECING)='2015' AND ( EXTRACT(MONTH FROM F_FECING) BETWEEN '01' AND '03') ORDER BY F_FECING ASC;


Por: Felix Antonio Quispe Palacios.
DNI: 41101185.
Nacionalidad: Peruana.
País: Perú.