0% encontró este documento útil (0 votos)
17 vistas4 páginas

SQL Avg Función

La función SQL AVG() calcula el promedio de una columna numérica, permitiendo agregar condiciones con la cláusula WHERE y utilizar alias para nombrar la columna resultante. Se pueden realizar consultas para obtener el precio medio de productos en categorías específicas y listar productos con precios superiores al promedio. Además, se puede combinar AVG() con GROUP BY para obtener promedios por categoría.
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 PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
17 vistas4 páginas

SQL Avg Función

La función SQL AVG() calcula el promedio de una columna numérica, permitiendo agregar condiciones con la cláusula WHERE y utilizar alias para nombrar la columna resultante. Se pueden realizar consultas para obtener el precio medio de productos en categorías específicas y listar productos con precios superiores al promedio. Además, se puede combinar AVG() con GROUP BY para obtener promedios por categoría.
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 PDF, TXT o lee en línea desde Scribd

3.

SQL AVG() Función


La función SQL AVG()
El AVG() La función devuelve el valor promedio de una columna numérica.

Encuentra el precio medio de todos los productos:

SELECT AVG(Price)
FROM Products;

Sintaxis
SELECT AVG(_column_name_) FROM _table_name_ WHERE _condition_;

Base de datos de demostración


A continuación se muestra una selección del Productos tabla utilizada en los ejemplos:

ProductID ProductName SupplierID CategoryID Unit Price


1 Chais 1 1 10 boxes x 20 18
bags
2 Chang 1 1 24 - 12 oz 19
bottles
3 Aniseed Syrup 1 2 12 - 550 ml 10
bottles
4 Chef Anton's Cajun 2 2 48 - 6 oz jars 22
Seasoning
5 Chef Anton's Gumbo Mix 2 2 36 boxes 21.35

Agregar una cláusula WHERE


Puedes agregar un WHERE cláusula para especificar condiciones:

Ejemplo
Devuelve el precio medio de los productos de la categoría 1:

SELECT AVG(Price)
FROM Products
WHERE CategoryID = 1;
Utilice un alias
Dale un nombre a la columna AVG usando el AS palabra clave.

Ejemplo
Nombra la columna "precio promedio":

SELECT AVG(Price) AS [average price]


FROM Products;

Más alto que el promedio


Para listar todos los registros con un precio superior al promedio, podemos utilizar
el AVG() función en una subconsulta:

Ejemplo
Devuelve todos los productos con un precio superior al precio medio:

SELECT * FROM Products


WHERE price > (SELECT AVG(price) FROM Products);

Utilice AVG() con GROUP BY


Aquí usamos el AVG() función y la GROUP BY cláusula, para devolver el precio medio para
cada categoría de la tabla Productos:

Ejemplo
SELECT AVG(Price) AS AveragePrice, CategoryID
FROM Products
GROUP BY CategoryID;

Ejemplo de todo
CREATE TABLE productos_tecnologicos (
id SERIAL PRIMARY KEY,
nombre VARCHAR(100),
categoria VARCHAR(50),
marca VARCHAR(50),
modelo VARCHAR(50),
precio DECIMAL(10, 2),
stock INT,
fecha_lanzamiento DATE,
calificacion DECIMAL(2, 1),
descripcion TEXT
);

INSERT INTO productos_tecnologicos (nombre, categoria, marca, modelo, precio, stock,


fecha_lanzamiento, calificacion, descripcion)
VALUES
('Laptop X', 'Computadora', 'Marca A', 'Modelo 1', 999.99, 50, '2023-01-15', 4.5, 'Laptop de alto
rendimiento.'),
('Smartphone Y', 'Teléfono', 'Marca B', 'Modelo 2', 699.99, 100, '2023-02-20', 4.7, 'Teléfono con
cámara avanzada.'),
('Tablet Z', 'Tableta', 'Marca C', 'Modelo 3', 399.99, 75, '2023-03-10', 4.3, 'Tableta ligera y
portátil.'),
('Smartwatch A', 'Reloj', 'Marca D', 'Modelo 4', 199.99, 150, '2023-04-05', 4.6, 'Reloj inteligente
con GPS.'),
('Auriculares B', 'Audio', 'Marca E', 'Modelo 5', 149.99, 200, '2023-05-12', 4.2, 'Auriculares con
cancelación de ruido.'),
('Laptop Y', 'Computadora', 'Marca A', 'Modelo 6', 1099.99, 30, '2023-06-01', 4.8, 'Laptop para
gamers.'),
('Smartphone Z', 'Teléfono', 'Marca B', 'Modelo 7', 799.99, 80, '2023-07-15', 4.5, 'Teléfono con
pantalla AMOLED.'),
('Tablet A', 'Tableta', 'Marca C', 'Modelo 8', 499.99, 60, '2023-08-20', 4.4, 'Tableta con stylus
incluido.'),
('Smartwatch B', 'Reloj', 'Marca D', 'Modelo 9', 249.99, 120, '2023-09-10', 4.7, 'Reloj con monitor
de salud.'),
('Auriculares C', 'Audio', 'Marca E', 'Modelo 10', 199.99, 180, '2023-10-05', 4.3, 'Auriculares
inalámbricos.'),
('Laptop Z', 'Computadora', 'Marca A', 'Modelo 11', 899.99, 40, '2023-11-01', 4.6, 'Laptop
ultradelgada.'),
('Smartphone A', 'Teléfono', 'Marca B', 'Modelo 12', 599.99, 90, '2023-12-15', 4.5, 'Teléfono con
carga rápida.'),
('Tablet B', 'Tableta', 'Marca C', 'Modelo 13', 349.99, 70, '2023-01-20', 4.2, 'Tableta con buena
batería.'),
('Smartwatch C', 'Reloj', 'Marca D', 'Modelo 14', 299.99, 110, '2023-02-25', 4.8, 'Reloj con
seguimiento de actividad.'),
('Auriculares D', 'Audio', 'Marca E', 'Modelo 15', 179.99, 160, '2023-03-30', 4.4, 'Auriculares con
sonido envolvente.'),
('Laptop W', 'Computadora', 'Marca A', 'Modelo 16', 1199.99, 20, '2023-04-15', 4.9, 'Laptop para
diseño gráfico.'),
('Smartphone B', 'Teléfono', 'Marca B', 'Modelo 17', 699.99, 85, '2023-05-10', 4.6, 'Teléfono con
gran autonomía.'),
('Tablet C', 'Tableta', 'Marca C', 'Modelo 18', 429.99, 65, '2023-06-05', 4.3, 'Tableta con buena
resolución.'),
('Smartwatch D', 'Reloj', 'Marca D', 'Modelo 19', 249.99, 140, '2023-07-01', 4.5, 'Reloj con
notificaciones.'),
('Auriculares E', 'Audio', 'Marca E', 'Modelo 20', 159.99, 190, '2023-08-15', 4.2, 'Auriculares con
micrófono.');

SELECT * FROM productos_tecnologicos;

-- Devuelve el valor promedio de una columna especifica que sea numerica

SELECT AVG(precio) AS " Valor Promedio"


FROM productos_tecnologicos;
--Clausula where
SELECT AVG(precio) AS "Valor promedio de 1 al 5"
FROM productos_tecnologicos
WHERE id BETWEEN 1 AND 5;
-- Todos los que estan mas arriba del promedio
SELECT * FROM productos_tecnologicos
WHERE precio > (SELECT AVG(precio) FROM productos_tecnologicos);
-- Precio por categoria
SELECT categoria, AVG(precio) AS AveragePrecio
FROM productos_tecnologicos
GROUP BY categoria;
--Precio id
SELECT id, AVG(precio) AS AveragePrecio
FROM productos_tecnologicos
GROUP BY id;07:01

También podría gustarte