100% encontró este documento útil (1 voto)
53 vistas15 páginas

Funciones SQL: Redondear y Agrupar

Este documento describe varias funciones SQL comunes como AVG, COUNT, FIRST, LAST, MAX, MIN, SUM, GROUP BY y HAVING. AVG devuelve el promedio, COUNT devuelve el recuento, FIRST y LAST devuelven el primer y último valor, y MAX, MIN y SUM devuelven el máximo, mínimo y suma. GROUP BY agrupa filas y HAVING incluye condiciones después de agrupar.

Cargado por

Joyas Mar Pau
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
100% encontró este documento útil (1 voto)
53 vistas15 páginas

Funciones SQL: Redondear y Agrupar

Este documento describe varias funciones SQL comunes como AVG, COUNT, FIRST, LAST, MAX, MIN, SUM, GROUP BY y HAVING. AVG devuelve el promedio, COUNT devuelve el recuento, FIRST y LAST devuelven el primer y último valor, y MAX, MIN y SUM devuelven el máximo, mínimo y suma. GROUP BY agrupa filas y HAVING incluye condiciones después de agrupar.

Cargado por

Joyas Mar Pau
Derechos de autor
© All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd

Funciones SQL

SQL tiene funciones predefinidas para realizar ciertos cálculos con un mayor rendimiento.

AVG Devuelve el valor medio de una columna.


COUNT Devuelve el número de filas de la consulta.
FIRST Devuelve el primer valor de la consulta.
LAST Devuelve el último valor de la consulta.
MAX Devuelve el mayor valor de una columna.
MIN Devuelve el menor valor de una columna.
SUM Devuelve la suma de los valores de una columna.
GROUP BY Agrupar filas con el mismo valor de una columna.
HAVING Incluir condiciones con funciones SQL.
UCASE Convierte un valor a mayúsculas.
LCASE Convierte un valor a minúsculas.
MID Extrae caracteres de un campo de texto.
LEN Devuelve la longitud de un campo de texto.
ROUND Redondea un campo numérico a un número de decimales especificado.
NOW Devuelve la fecha y hora actuales del sistema.
FORMAT Formatea un campo según se quiera mostrar.

MUY BUENO
[Link]
Función SQL AVG
La función AVG devuelve el valor medio de una columna de tipo numérico.

Sintaxis SQL AVG:

SELECT AVG(columna) FROM tabla

Ejemplo SQL AVG:

Tabla ‘pedidos’

id pedido cliente precio


1 p1 RUIZ 100
2 p2 PEREZ 300
3 p3 GOMEZ 250
4 p4 RODRIGUEZ 490
5 p5 LOPEZ 60

Si quieres saber el valor medio del campo ‘precio’, usa la siguiente función SQL

SELECT AVG(precio) 
AS preciomedio 
FROM pedidos

La tabla resultante sería

preciomedio
240

Si quieres seleccionar los clientes con el precio del pedido superior al precio medio de los
pedidos.

SELECT * FROM pedidos 


WHERE precio > (SELECT AVG(precio) FROM pedidos)

id pedido cliente precio


2 p2 PEREZ 300
3 p3 GOMEZ 250
4 p4 RODRIGUEZ 490

Función SQL COUNT


La función COUNT devuelve el número de filas de la consulta, es decir, el número de
registros que cumplen una determinada condición.

Los valores nulos no serán contabilizados.

Sintaxis de SQL COUNT:

SELECT COUNT(columna) FROM tabla

Para obtener el número de filas de una tabla

SELECT COUNT(*) FROM tabla

Para obtener el número de valores distintos de la columna especificada.

SELECT COUNT(DISTINCT columna) FROM tabla.

Ejemplos de SQL COUNT:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio


RUIZ 100
PEREZ 300
GOMEZ 250
1 p1
5 p5 2 p2
3 p3
4 p4

SELECT COUNT(*) FROM pedidos

Devolverá el número de filas de la tabla, es decir, 5


SELECT COUNT(*) FROM pedidos 
WHERE cliente = ‘RUIZ’

Devolverá el número de filas del resultado de la consulta, es decir, 1

SELECT COUNT(*) FROM pedidos


WHERE precio > 270

Devolverá el número de filas del resultado de la consulta, es decir, 2

Función SQL FIRST


La función SQL FIRST devuelve el primer valor de la columna seleccionada.

Sintaxis SQL FIRST:

SELECT FIRST(columna) FROM table

Ejemplo SQL FIRST:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio


1 p1 RUIZ 100
2 p2 PEREZ 300
3 p3 GOMEZ 250
4 p4 RODRIGUEZ 490
5 p5 LOPEZ 60

SELECT FIRST(precio) FROM pedidos

Devolverá el valor 100, que es el valor de la columan ‘precio’ de la primera fila de la tabla.

Función SQL LAST


La función SQL LAST sirve para obtener el valor de una columna de la última fila de la
selección.

Sintaxis SQL LAST:


SELECT LAST(columna) FROM table

Ejemplo SQL LAST:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio


1 p1 RUIZ 100
2 p2 PEREZ 300
3 p3 GOMEZ 250
4 p4 RODRIGUEZ 490
5 p5 LOPEZ 60

SELECT LAST(precio) FROM pedidos

Devolverá el valor 60, que es el valor de la columna ‘precio’ de la última fila de la tabla.

Función SQL MAX


La función MAX sirve para obtener el mayor valor para una columna determinada.

Sintaxis SQL MAX:

SELECT MAX(columna) FROM tabla

Ejemplo SQL MAX:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 RUIZ 100

2 p2 PEREZ 300

3 p3 GOMEZ 250

4 p4 RODRIGUEZ 490

5 p5 LOPEZ 60
SELECT MAX(precio) FROM pedidos

Devolverá el valor 490, que es máximo valor de la columna ‘precio’ de la consulta.

Función SQL MIN


La función MIN sirve para obtener el valor más pequeño para una columna determinada.

Sintaxis SQL MIN:

SELECT MIN(columna) FROM tabla

Ejemplo SQL MIN:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio


1 p1 RUIZ 100
2 p2 PEREZ 300
3 p3 GOMEZ 250
4 p4 RODRIGUEZ 490
5 p5 LOPEZ 60

SELECT MIN(precio) FROM pedidos

Devolverá el valor 60, que es valor más pequeño de la columna ‘precio’ de la consulta.

Función SQL SUM


La función SUM permite obtener la suma total de los valores de una columna de tipo
numérico.

Sintaxis SQL SUM

SELECT SUM(columna) FROM tabla

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio


1 p1 RUIZ 100
2 p2 PEREZ 300
3 p3 GOMEZ 250
4 p4 RODRIGUEZ 490
5 p5 LOPEZ 60

SELECT SUM(precio) FROM pedidos

Devolverá el valor 1200, que es la suma de todos los valores de la columna ‘precio’ de la
consulta realizada, en este caso, de toda la tabla.

FUNCION SQL GROUP BY


La función GROUP BY se utiliza para juntar filas de resultados que coincidan en el valor
de alguna columna seleccionada.

Sintaxis GROUP BY

SELECT columna, funcion(columna) 


FROM tabla
GROUP BY columna

Ejemplo de uso de GROUP BY

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 RUIZ 100

2 p2 PEREZ 300

3 p3 GOMEZ 250

4 p4 RUIZ 490

5 p5 GOMEZ 60

SELECT cliente, SUM(precio) 


FROM pedidos 
GROUP BY cliente

El resultado será el siguiente:


cliente SUM(precio)

RUIZ 590

PEREZ 300

GOMEZ 310

El cliente ‘RUIZ’ se repite 2 veces, se suman sus valores para la columna ‘precio’ 490 +
100 = 590

El cliente ‘PEREZ’ se queda igual, con el valor para ‘precio’ de 300.

El cliente ‘GOMEZ’ se repite 2 veces, y se suman sus valores para la columna ‘precio’ 250
+ 60 = 310

Nota: Se puede agrupar también por varias columnas.

GROUP BY columna1, columna2

FUNCION SQL HAVING


La función HAVING se utiliza para incluir condiciones con alguna función SQL del tipo
SUM, MAX, ..

Como la cláusula WHERE no se puede utilizar con funciones SQL del tipo SUM, MAX,
entonces utilizamos en su lugar, HAVING.

Sintaxis HAVING

SELECT columna1, SUM(columna2) 


FROM tabla
GROUP BY columna1
HAVING SUM(columna2) < número

Ejemplo de SQL HAVING

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 RUIZ 100
2 p2 PEREZ 300

3 p3 GOMEZ 250

4 p4 RUIZ 490

5 p5 GOMEZ 60

SELECT cliente, SUM(precio) 


FROM pedidos 
GROUP BY cliente
HAVING SUM(precio) > 500

El resultado sera:

cliente SUM(precio)

RUIZ 590

Solamente el cliente ‘RUIZ’ suma en sus valores para ‘precio’ 490 + 100 = 590 un valor
superior a 500

El cliente ‘GOMEZ’ suma en sus valores para la columna ‘precio’ 250 + 60 = 310, que
también es menor de 500, y por tanto, no aparece en la tabla resultante.

El cliente ‘PEREZ’ obtiene un valor de 300, y tampoco aparece en la tabla, porque es


menor de 500.

Función SQL UCASE


La función UCASE sirve para convertir a mayúsculas el valor de una columna.

Sintaxis SQL UCASE

SELECT UCASE(columna) 
FROM tabla

Ejemplo SQL UCASE:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio


1 p1 Ruiz 100

2 p2 Perez 300

3 p3 Gomez 250

SELECT UCASE(cliente) 
FROM pedidos

El resultado sera:

cliente

RUIZ

PEREZ

GOMEZ

Función SQL LCASE


La función LCASE sirve para convertir a minúsculas el valor de una columna.

Sintaxis SQL LCASE

SELECT LCASE (columna) FROM tabla

Ejemplo SQL LCASE:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 Ruiz 100

2 p2 Perez 300

3 p3 Gomez 250

SELECT LCASE (cliente) FROM pedidos


El resultado sera:

cliente

ruiz

perez

gomez

Función SQL MID


La función MID se utiliza para extraer caracteres de un campo de texto

Sintaxis SQL MID

SELECT MID(columna, inicio, longitud) 


FROM tabla

‘columna’ es la columna donde se quiere extraer datos de su valor. 


‘inicio’ es la posición desde la que empezar a extraer. 
‘longitud’ es el número de caracteres a extraer. En caso de no especificarlo, cogerá hasta el
final del campo de texto.

Ejemplo de SQL MID:

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 Ruiz 100

2 p2 Perez 300

3 p3 Gomez 250

Si queremos extraer los primeros 3 caracteres de los valores de la columna ‘cliente’:

SELECT MID(cliente,1,3) FROM pedidos

El resultados será:
cliente

Rui

Per

Gom

Función SQL LEN


La función LEN sirve para calcular la longitud del valor de un campo de texto.

Sintaxis SQL LEN

SELECT LEN(columna) FROM tabla

Ejemplo SQL LEN

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 Ruiz 100

2 p2 Perez 300

3 p3 Rodriguez 250

Si queremos saber la longitud de cada valor de la columna ‘cliente’:

SELECT LEN(cliente) AS cliente FROM pedidos

cliente

9
Función SQL ROUND
La función ROUND se utiliza para redondear un campo numérico en un número de
decimales especificado.

Sintaxis SQL ROUND

SELECT ROUND(columna, decimales) FROM tabla

Ejemplo SQL ROUND

Dada la siguiente tabla ‘pedidos’

id pedido cliente precio

1 p1 Ruiz 100.25

2 p2 Perez 305.57

3 p3 Rodriguez 250.84

Si queremos los precios de los pedidos sin números decimales, ejecutaremos:

SELECT ROUND(precio,0) AS rprecio 


FROM pedidos

El resultado sera:

rprecio

100

306

251

Función SQL NOW


La función NOW devuelve la fecha y hora actuales.

Sintaxis SQL NOW


SELECT NOW() FROM table

Ejemplo SQL NOW

Dada la siguiente tabla ‘productos’

id producto precio

1 ordenador 1200.25

2 impresora 65.57

3 teclado 10.84

Si queremos saber los precios de los productos a fecha de hoy

SELECT producto, precio, NOW() AS fecha 


FROM productos

El resultado será:

producto precio fecha

ordenador 900.25 10/2/2012 10:15:42 AM

impresora 65.57 10/2/2012 10:15:42 AM

teclado 10.84 10/2/2012 10:15:42 AM

Función SQL FORMAT


La función FORMAT se utiliza para especificar como se mostrará un campo en el resultado
de la consulta.

Sintaxis SQL FORMAT

SELECT FORMAT(columna, formato) FROM tabla

Ejemplo SQL FORMAT

Dada la siguiente tabla ‘productos’


id producto precio

1 ordenador 1200.25

2 impresora 65.57

3 teclado 10.84

Si queremos saber los precios de los productos a fecha de hoy, pero queremos que la fecha
tenga el formato ‘YYYY-MM-DD’, es decir, 4 caracteres para el año, guión, 2 caracteres
para el mes, guión y 2 caracteres para el día.

SELECT producto, precio, 


FORMAT(NOW(), ‘YYYY-MM-DD’) 
AS fecha 
FROM productos

El resultado será:

producto precio fecha

ordenador 900.25 2012-02-10

impresora 65.57 2012-02-10

teclado 10.84 2012-02-10

También podría gustarte