Está en la página 1de 4

/* CONSULTAS SIMPLES(DE UNA TABLA)

SUBCOMANOS DEL SELECT:


1.ORDER BY
2.BETWEEN
3.IN, NOT IN
4.LIKE, NOT LIKE
5.TOP
6.DISTINCT
7.COUNT
8.SUM, AVG, MAX, MIN
9.DAY, MONTH, YEAR
10.GROUP BY
11.HAVING

LOS SUBCOMANDOS 10 Y 11 SE VERAN EN CONSULTAS MULTITABLAS (A VARIAS TABLAS) */

USE Supermercado

/* 1) MOSTRAR TODOS LOS DATOS DE CLIENTES */

SELECT* FROM CLIENTES

/* 2) LISTAR CODIGO, NOMBRE Y TELEFONO DE TODOS LOS CLIENTES ORDENADOS POR NOMBRE
ASC */

/* SOLUCION A */
SELECT CODCLI "CODIGO", NOMCLI "NOMBRE", TELEF "TELEFONO"
FROM CLIENTES ORDER BY NOMBRE ASC;

/* SOLUCION B, COLOCAR EL NUMERO DE COLUMNA*/


SELECT CODCLI "CODIGO", NOMCLI "NOMBRE", TELEF "TELEFONO"
FROM CLIENTES ORDER BY 2 ASC;

/* 3)LISTAR CODIGO, NOMBRE Y SUELDO DEL PERSONAL QUE GANA ENTRE 3000 Y 5000.
ORDENADO
POR SUELDO DESC. */

SELECT* FROM PERSONAL

SELECT CODPER "CODIGO", NOMPER "NOMBRE", SUELDO


FROM PERSONAL
WHERE SUELDO BETWEEN 3000 AND 5000
ORDER BY 3 DESC

/* 4)LISTAR CODIGO DE COMPROBANTE CABECERA Y FECHA DE TODOS LOS COMPROBANTES


EMITIDOS ENTRE EL 02/01/15 Y EL 31/12/15. ORDENADO POR FECHA ASC */

SELECT * FROM COMP_CABECERA;

SELECT CODCOM "CODIGO DE COMPROBANTE", FECHA


FROM COMP_CABECERA
WHERE FECHA BETWEEN '2015-01-02' AND '2015-11-30' /* FORMATO AMERICANO
AO, DIA, MES, TAMBIEN PUEDE SER 12/31/15 */
ORDER BY 2 ASC;

/* 5) CONSULTAR NOMBRE, PRECIO Y STOCK DE LOS PRODUCTOS DE LAS MARCAS SAPOLIO,


CHIVAS REGAL Y ARIEL. ORDENADO POR PRECIO ASC. */

SELECT * FROM PRODUCTOS;


SELECT * FROM MARCAS;

SELECT NOMPROD "NOMBRE", PRECIO, STOCK FROM PRODUCTOS


WHERE CODMAR IN
(SELECT CODMAR FROM MARCAS WHERE NOMMAR IN('SAPOLIO', 'CHIVAS REGAL',
'ARIEL'))
ORDER BY 2 ASC;

/* LISTAR CODIGO DE CLIENTE, NOMBRE DE CLIENTE Y TELEFONO, DE LOS CLIENTES QUE AUN
NO HAN COMPRADO. ORDENADO POR NOMBRE DE CLIENTE ASC */

SELECT * FROM COMP_CABECERA

SELECT * FROM CLIENTES

SELECT CODCLI "CODIGO CLIENTE", NOMCLI "NOMBRE CLIENTE", TELEF "TELEFONO"


FROM CLIENTES WHERE CODCLI NOT IN (SELECT CODCLI FROM COMP_CABECERA)
ORDER BY 2 ASC;

/* 7) LISTAR NOMBRE DE CLIENTE Y TELEFONO, DE LOS CLIENTES QUE TIENE CELULAR.


ORDENADO POR TELEFONO ASC. */

SELECT NOMCLI "NOMBRE CLIENTE", TELEF "TELEFONO"


FROM CLIENTES WHERE TELEF LIKE '9%' /* % NO IMPORTA QUE LO VENGA DESPUES DEL
9 */
ORDER BY 2 ASC;

/* 8) LISTAR NOMBRE DE CLIENTE Y TELEFONO, DE LOS CLIENTES QUE TIENE CELULAR


Y SU ULTIMO DIGITO ES UN NUMERO PAR. ORDENADO POR TELEFONO ASC. */

SELECT NOMCLI "NOMBRE CLIENTE", TELEF "TELEFONO"


FROM CLIENTES WHERE TELEF LIKE '9%[2468]' /* % [] INDICA EL ULTIMO DIGITO
(TERMINA)*/
ORDER BY 2 ASC;

/* 9) LISTAR NOMBRE DE CLIENTE Y TELEFONO, DE LOS CLIENTES CUYO


TELEFONO TIENEN
COMO PRIMER DIGITO UN NUMERO PAR, SU TERCER DIGITO SEA PAR Y
SU PENULTIMO DIGITO SEA IMPAR. ORDENADO POR TELEFONO ASC. */

SELECT * FROM CLIENTES

SELECT NOMCLI "NOMBRE CLIENTE", TELEF "TELEFONO"


FROM CLIENTES WHERE TELEF LIKE '[2468]_[2468]%[13579]_' /* _ NO EVALUA ESE
DIGITO */
ORDER BY 2 ASC;

/* 10) LISTAR NOMBRE DE CLIENTE Y TELEFONO, DE LOS CLIENTES QUE TENGAN


TELEFONO FIJO
ORDENADO POR TELEFONO ASC. */

SELECT NOMCLI "NOMBRE CLIENTE", TELEF "TELEFONO"


FROM CLIENTES WHERE TELEF NOT LIKE '9%' /* % [] INDICA EL ULTIMO DIGITO
(TERMINA)*/
ORDER BY 2 ASC;

/* 11) LISTAR NOMBRE Y SUELDO DE LOS 3 EMPLEADOS QUE GANAN MAS. */

SELECT TOP 3 NOMPER "NOMBRE PERSONAL", SUELDO FROM PERSONAL ORDER BY 2 DESC

/* 12) LISTAR NOMBRE Y PRECIO DE LOS 2 PRODUCTOS DE MENOR PRECIO. */

SELECT TOP 2 NOMPROD "NOMBRE", PRECIO FROM PRODUCTOS ORDER BY 2 ASC;

/* 13) LISTAR LOS CODIGO DE PRODUCTOS QUE SE HAN VENDIDO.


ORDENADO POR CODIGO DE PRODUCTO ASC.*/

SELECT * FROM COMP_DETALLE;

SELECT CODPROD "CODIGO DE PRODUCTO" FROM COMP_DETALLE


ORDER BY 1 ASC

/* 14) LISTAR LOS DISTINTOS CODIGO DE PRODUCTOS (NO REPETIR VALORES EN LA


RESPUESTA)
QUE SE HAN VENDIDO. ORDENADO POR CODIGO DE PRODUCTO ASC.*/

SELECT * FROM COMP_DETALLE;

SELECT DISTINCT CODPROD "CODIGO DE PRODUCTO" FROM COMP_DETALLE

/*15) MOSTRAR EL NUMERO DE CIENTES REGISTRADOS */


SELECT COUNT(CODCLI) "NRO CLIENTES" FROM CLIENTES

/*16) MOSTRAR EL NUMERO DE CIENTES REGISTRADOS QUE TIENEN CELULARES */


SELECT COUNT(CODCLI) "NRO CLIENTES" FROM CLIENTES
WHERE TELEF LIKE '9%'

/*17) MOSTRAR SUMA DE SUELDOS, PROMEDIO DE SULDOS, MAXIMO MINIMO SUELDO Y


NUMERO DE EMPLEADOS*/

SELECT * FROM PERSONAL;

SELECT SUM(SUELDO) "SUMA DE SUELDOS", AVG(SUELDO) "PROMEDIO", MAX(SUELDO)


"MAXIMO",
MIN(SUELDO) "MINIMO", COUNT(CODPER) "NRO EMPLEADOS" FROM PERSONAL;

/*18) LISTAR CODIGO, NOMBRE Y SUELDO DEL PERSONAL QUE GANA MAS QUE EL
PROMEDIO DE
SUELDOS. ORDENADO POR SUELDO DESC. */

SELECT* FROM PERSONAL

SELECT CODPER, NOMPER, SUELDO FROM PERSONAL


WHERE SUELDO > (SELECT AVG(SUELDO) FROM PERSONAL)
ORDER BY 3 DESC
/*19) LISTAR CODIGO, NOMBRE Y PRECIO DE LOS PRODUTOS DE MAYOR Y MENOR PRECIO
*/

SELECT * FROM PRODUCTOS

SELECT CODPROD, NOMPROD, PRECIO FROM PRODUCTOS WHERE PRECIO IN


((SELECT MAX(PRECIO)FROM PRODUCTOS),(SELECT MIN(PRECIO)FROM PRODUCTOS))

/*20) LISTAR FECHA DEL SISTEMA, DIA DEL SYSTEM, MES DEL SISTEMA Y AO DEL
SISTEMA */

SELECT GETDATE() "FECHA SISTEMA", DAY(GETDATE()) "DIA", MONTH(GETDATE())


"MES",
YEAR(GETDATE()) "AO";

/*21) LISTAR NOMBRE DEL PERSONAL, FECHA DE NACIMIENTO Y SU EDAD. ORDENADO POR
EDAD DESC */

SELECT * FROM PERSONAL

SELECT NOMPER "NOMBRE", FNAC "FECHA NACIMIENTO",


YEAR(GETDATE())-YEAR(FNAC) "EDAD" FROM PERSONAL ORDER BY 3 DESC;

/*22) LISTAR NOMBRE DE PERSONAL Y EDAD, DEL PERSONAL MAYOR Y MENOR EDAD. */

SELECT NOMPER "NOMBRE DE PERSONAL", YEAR(GETDATE())-YEAR(FNAC) "EDAD"


FROM PERSONAL
WHERE YEAR(GETDATE())-YEAR(FNAC)
IN((SELECT MAX(YEAR(GETDATE())-YEAR(FNAC)) FROM
PERSONAL),
(SELECT MIN(YEAR(GETDATE())-YEAR(FNAC)) FROM
PERSONAL))

SELECT NOMPER "NOMBRE DE PERSONAL", YEAR(GETDATE())-YEAR(FNAC) "EDAD"


FROM PERSONAL
WHERE FNAC IN((SELECT MAX(FNAC) FROM PERSONAL),
(SELECT MIN(FNAC) FROM PERSONAL))

También podría gustarte