SQL Server nos proporciona varias funciones aggregate que se pueden utilizar para realizar diferentes tipos de cálculos en un conjunto de valores, y devolver un solo valor que resume el conjunto de datos de entrada. Estas funciones agregadas de SQL Server incluyen AVG (), COUNT (), SUM (), MIN () y MAX ().

en este artículo, revisaremos el uso de la función agregada MAX() y proporcionaremos varios ejemplos del uso de la función MAX ().,

Usage

la función SQL MAX() aggregate se utiliza para devolver el valor máximo de la expresión numérica proporcionada o el valor más alto en la secuencia de cotejo de la expresión de caracteres proporcionada.,) función de agregado es como:

1
MAX( expresión )

Cuando la opción TODOS, que es la opción por defecto, indica que el MAX() función de agregado se aplica a todos los valores de la expresión y las DISTINTAS opción indica que cada valor único serán considerados en la función de agregado, que no es aplicable para la función MAX ().,

la expresión aquí se puede pasar a la función de agregado MAX() puede ser cualquier columna de tabla numérica, de carácter, uniqueidentifier o DateTime, teniendo en cuenta que el tipo de datos de bits no se puede usar con la función de agregado MAX ().

la función Max() aggregate también puede tomar un valor constante o cualquier expresión aritmética o de cadena, teniendo en cuenta que la función MAX () aggregate ignorará cualquier valor nulo en la expresión de entrada.,

el valor que se devuelve de la función agregado SQL MAX () será el mismo que el tipo de datos de la expresión, y el valor devuelto será nulo cuando la expresión de entrada no tenga filas desde las que leer.,

6
7
Crear tabla MAXDemo
( ID INT IDENTITY PRIMARY KEY,
EmpName nvarchar (100),
EmpDateOfBirth datetime,
empsalary decimal (6,2),
empisactive bit
)

una vez creada la tabla, la rellenaremos con los datos de prueba de las tablas de la base de datos de pruebas de Microsoft adventureworks2017, utilizando el script t-sql a continuación:

el entorno de prueba ahora está listo con una tabla de 316 registros.,14″>

1
2
3

SELECT MAX(ID) COMO MaxID
DE MAXDemo
IR

Y el valor devuelto en nuestra demo aquí será 316, que es el último añadido ID de empleado, como se muestra a continuación:

Otro escenario en el que se necesita para obtener el nombre del empleado que se encuentra al final de el orden alfabético.,ollation, y devuelve el último valor, como en la sentencia T-SQL a continuación:

1
2
3
4

SELECT MAX(EmpName) COMO LastEmp
DE MAXDemo
IR

En nuestro caso aquí, la instrucción SELECT con el SQL MAX() función de agregado devolverá el último empleado, después de ordenar los nombres de los empleados., Puede imaginarlo ordenando los nombres descendiendo y luego obteniendo el nombre del empleado de Top 1, como se muestra a continuación:

la función agregado SQL MAX() también se puede usar con el tipo de datos DateTime, donde ordenará los valores DateTime y devolverá el último valor de los resultados ordenados. En nuestro escenario, tenemos que conseguir el empleado más joven con la fecha de nacimiento más cercana.,ggregate function, as in the T-SQL SELECT statement below:

1
2
3
4

SELECT MAX(EmpDateOfBirth) AS YoungestEmp
FROM MAXDemo
GO

The previous SELECT statement with the SQL MAX() aggregate function will sort the employees’ birthdate and return the latest birthdate value., Puede imaginar la función de agregado MAX() como ordenar los valores de la fecha de nacimiento de los empleados descendiendo y luego obteniendo la fecha de nacimiento Top 1, como se muestra a continuación:

Revamping la escala de salarios de los empleados se puede verificar con diferentes tipos de cálculos y operaciones de agregado, incluida la función de agregado SQL MAX ().,v id=»cab9fbe5ad»>

select max(empisactive) as maxactive
from maxdemo
go
1
2
3
4

la ejecución de la instrucción SELECT fallará, con un error mensaje que muestra que el bit de tipo de datos no se puede usar con el operador max, donde no hace ninguna escena para ver el valor máximo de una columna de bits, que ya tiene solo dos valores, 1 y 0., El mensaje de error será el siguiente:

la función agregada SQL MAX() también se puede usar dentro de la cláusula WHERE de una simple consulta SELECT., EmpIsActive = 1

la consulta de selección anterior devolverá toda la información sobre el empleado cuyo salario es el salario más grande dentro del salario de todos los empleados, donde calculará el valor máximo de los salarios de los empleados y comparará el salario de cada empleado con ese valor, como se muestra a continuación:

También podemos usar la función SQL Max() aggregate para devolver el valor máximo de una columna específica con otros valores de columna, donde todas las columnas no agregadas deben enumerarse en la cláusula GROUP BY.,/div>

1
seleccione MAX(AllowanceValue) como MaxAllowance de MAXDemo

el resultado devuelto será nulo, ya que la tabla no tiene ningún valor en esa columna, como se muestra a continuación:

conclusión

queda claro de estos ejemplos anteriores, cómo podemos utilice la función SQL max() aggregate para lograr un objetivo específico en diferentes escenarios, con diferentes tipos de datos y dentro de cualquier consulta de T-SQL.,

  • Author
  • Recent Posts
Ahmad Yaseen is a Microsoft Big Data engineer with deep knowledge and experience in SQL BI, SQL Server Database Administration and Development fields.
He is a Microsoft Certified Solution Expert in Data Management and Analytics, Microsoft Certified Solution Associate in SQL Database Administration and Development, Azure Developer Associate and Microsoft Certified Trainer.,
Además, está contribuyendo con sus consejos SQL en muchos blogs.
Ver todos los mensajes por Ahmad Yasin

Últimas entradas por Ahmad Yasin (ver todos)
  • como monitor de Azure Datos de Fábrica – 15 de enero de 2021
  • Usar Fuente de Control en Azure Datos de Fábrica – 12 de enero, 2021
  • el Uso de Plantillas en Azure Datos de Fábrica – 8 de enero de 2021

Articles

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *