Iniciar sesión con Microsoft
Iniciar sesión o crear una cuenta
Hola:
Seleccione una cuenta diferente.
Tiene varias cuentas
Elija la cuenta con la que desea iniciar sesión.

En este artículo se explica cómo usar consultas de valores superiores y consultas de totales para buscar las fechas más recientes o más tempranas de un conjunto de registros. Esto puede ayudarle a responder a una variedad de preguntas empresariales, como cuando un cliente ha realizado un pedido por última vez o cuáles cinco trimestres han sido los mejores para las ventas, por ciudad.

En este artículo

Información general

Puede clasificar datos y revisar los elementos de mayor jerarquía mediante una consulta de valores superiores. Una consulta de valor superior es una consulta de selección que devuelve un número especificado o un porcentaje de valores de la parte superior de los resultados, por ejemplo, las cinco páginas más populares de un sitio web. Puede usar una consulta de valores superiores con cualquier tipo de valores: no tienen que ser números.

Si desea agrupar o resumir los datos antes de clasificarlo, no tiene que usar una consulta de valores superiores. Por ejemplo, supongamos que necesita buscar los números de ventas de una fecha determinada para cada ciudad en la que opera su empresa. En ese caso, las ciudades se convierten en categorías (necesita buscar los datos por ciudad), por lo que usa una consulta de totales.

Al usar una consulta de valores superiores para buscar registros que contengan las fechas más recientes o más tempranas en una tabla o grupo de registros, puede responder a una variedad de preguntas empresariales, como las siguientes:

  • ¿Quién ha estado haciendo más ventas últimamente?

  • ¿Cuándo hizo un cliente por última vez un pedido?

  • ¿Cuándo están los próximos tres cumpleaños en el equipo?

Para realizar una consulta de valor superior, empiece creando una consulta de selección. A continuación, ordene los datos según su pregunta, tanto si busca la parte superior como la inferior. Si necesita agrupar o resumir los datos, convierta la consulta de selección en una consulta de totales. A continuación, puede usar una función de agregado, como Max o Min para devolver el valor más alto o más bajo, o Primero o Último para devolver la fecha más temprana o más reciente.

En este artículo se presupone que los valores de fecha que usa tienen el tipo de datos Fecha y hora. Si los valores de fecha están en un campo Texto, .

Considere la posibilidad de usar un filtro en lugar de una consulta de valores superiores

Un filtro suele ser mejor si tiene una fecha específica en mente. Para determinar si debe crear una consulta de valores superiores o aplicar un filtro, tenga en cuenta lo siguiente:

  • Si desea devolver todos los registros en los que la fecha coincide, es anterior o posterior a una fecha específica, use un filtro. Por ejemplo, para ver las fechas de ventas entre abril y julio, aplique un filtro.

  • Si desea devolver una cantidad especificada de registros que tienen las fechas más recientes o más recientes de un campo y no conoce los valores de fecha exactos, o que no importan, cree una consulta de valores superiores. Por ejemplo, para ver los cinco mejores trimestres de ventas, use una consulta de valores superiores.

Para obtener más información sobre cómo crear y usar filtros, vea el artículo Aplicar un filtro para ver registros de selección en una base de datos de Access.

Volver al principio

Preparar datos de ejemplo para seguirlos junto con los ejemplos

En los pasos de este artículo se usan los datos de las tablas de ejemplo siguientes.

La tabla Empleados   

Apellidos

Nombre

Dirección

Ciudad

Egion de CountryOrR

Fecha de nacimiento

Fecha de contratación

Bernabé

Josh

Rodeo de la Cruz 477

Caracas

EE. UU.

05-feb-1968

10-jun-1994

Heloo

Waleed

Carlos Pellegrini 1263

San Cristóbal

EE. UU.

22 de mayo de 1957

22-Nov-1996

Parra

Guido

3122 75th Ave. S.W.

I. de Margarita

EE. UU.

11-Nov-1960

11-Mar-2000

Bagel

Jean Felipe

Av. Benavides 4858

Lima

Reino Unido

22-Mar-1964

22-jun-1998

Precio

Julián

Av. de la Constitución 2222

Ciudad de México

México

05-Jun-1972

05-Ene-2002

Hughes

Christine

3122 75th St. S.

Seattle

EE. UU.

23-Ene-1970

23-abr-1999

Riley

Steve

Cerrito 333

Buenos Aires

EE. UU.

14-abr-1964

14-Oct-2004

Birkby

Dana

2 Nosey Pkwy

Barinas

EE. UU.

29-Oct-1959

29-mar-1997

La tabla EventType    

TypeID

Tipo de evento

1

Lanzamiento del producto

2

Función corporativa

3

Función privada

4

Recaudador de fondos

5

Feria

6

Conferencia

7

Concierto

8

Exhibir

9

Street Fair

La tabla Compradores    

Id. de cliente

Compañía

Contacto

1

Contoso, Ltd. Gráfico

Jonathan Haas

2

Tailspin Toys

Elena de Adams

3

Fabrikam

Carol Philips

4

Wingtip Toys

Lucio Iallo

5

A. Datum

Mandar Samant

6

Adventure Works

Brian Burke

7

Instituto de diseño

Estela jaka

8

Escuela de Bellas Artes

Milena Duomanova

La tabla Eventos    

EventID

Tipo de evento

Clientes

Fecha del evento

Precio

1

Lanzamiento del producto

Contoso, Ltd.

4/14/2011

10.000 $

2

Función corporativa

Tailspin Toys

4/21/2011

8.000 $

3

Feria

Tailspin Toys

1/5/2011

25.000 $

4

Exhibir

Graphic Design Institute

5/13/2011

$4.500

5

Feria

Contoso, Ltd.

5/14/2011

55.000 $

6

Concierto

Escuela de Bellas Artes

5/23/2011

12 000 $

7

Lanzamiento del producto

A. Datum

6/1/2011

15 000 $

8

Lanzamiento del producto

Wingtip Toys

6/18/2011

21 000 $

9

Recaudador de fondos

Adventure Works

6/22/2011

1.300 $

10

Conferencia

Graphic Design Institute

6/25/2011

2.450 $

11

Conferencia

Contoso, Ltd.

04/07/2011

3.800 $

1,2

Street Fair

Graphic Design Institute

04/07/2011

5.500 €

Nota: En los pasos de esta sección se presupone que las tablas Clientes y Tipo de evento se encuentran en el lado "uno" de las relaciones uno a varios con la tabla Eventos. En este caso, la tabla Eventos comparte los campos Id. de cliente y Id.tipo. Las consultas de totales descritas en las secciones siguientes no funcionarán sin esas relaciones.

Pegar los datos de ejemplo en hojas de cálculo de Excel

  1. Inicie Excel. Se abrirá un libro vacío.

  2. Presione MAYÚS+F11 para insertar una hoja de cálculo (necesitará cuatro).

  3. Copie los datos de cada tabla de ejemplo en una hoja de cálculo vacía. Incluya los encabezados de columna (la primera fila).

Crear tablas de base de datos a partir de las hojas de cálculo

  1. Seleccione los datos de la primera hoja de cálculo, incluidos los encabezados de columna.

  2. Haga clic con el botón derecho en el panel de navegación y, a continuación, haga clic en Pegar.

  3. Haga clic en Sí para confirmar que la primera fila contiene encabezados de columna.

  4. Repita los pasos del 1 al 3 para cada una de las hojas de cálculo restantes.

Buscar la fecha más o menos reciente

En los pasos de esta sección se usan los datos de ejemplo para ilustrar el proceso de creación de una consulta de valores superiores.

Crear una consulta de valores superiores básicos

  1. En la pestaña Crear del grupo Consultas, haga clic en Diseño de consulta.

  2. Haga doble clic en la tabla Empleados y, a continuación, haga clic en Cerrar.

    Si usa los datos de ejemplo, agregue la tabla Empleados a la consulta.

  3. Agregue los campos que desea usar en la consulta a la cuadrícula de diseño. Puede hacer doble clic en cada campo o arrastrar y colocar cada campo en una celda en blanco en la fila Campo.

    Si usa la tabla de ejemplo, agregue los campos Nombre, Apellidos y Fecha de nacimiento.

  4. En el campo que contiene los valores superiores o inferiores (el campo Fecha de nacimiento, si usa la tabla de ejemplo), haga clic en la fila Ordenar y seleccione Ascendente oDescendente.

    El criterio de ordenación descendente devuelve la fecha más reciente y el criterio de ordenación ascendente devuelve la fecha más temprana.

    Importante: Debe establecer un valor en la fila Ordenar solo para los campos que contienen las fechas. Si especifica un criterio de ordenación para otro campo, la consulta no devuelve los resultados que desee.

  5. En la pestaña Diseño, en el grupo Herramientas, haga clic en la flecha abajo situada junto a Todos (la lista Valores principales) y escriba el número de registros que desea ver o seleccione una opción de la lista.

  6. Haga clic en Imagen del botónpara ejecutar la consulta y mostrar los resultados en la vista Hoja de datos.

  7. Guarde la consulta como NextBirthDays.

Puede ver que este tipo de consulta de valores superiores puede responder a preguntas básicas, como quién es la persona más antigua o más joven de la compañía. Los pasos siguientes explican cómo usar expresiones y otros criterios para agregar potencia y flexibilidad a la consulta. Los criterios que se muestran en el paso siguiente devuelven los próximos tres cumpleaños de empleados.

Agregar criterios a la consulta

En estos pasos se usa la consulta creada en el procedimiento anterior. Puede seguir junto con una consulta de valores superiores diferente siempre que contenga datos reales de fecha y hora, no valores de texto.

Sugerencia:  Si desea comprender mejor cómo funciona esta consulta, cambie entre la vista Diseño y la vista Hoja de datos en cada paso. Si desea ver el código de consulta real, cambie a SQL consulta. Para cambiar entre vistas, haga clic con el botón derecho en la pestaña de la parte superior de la consulta y, a continuación, haga clic en la vista que desee.

  1. En el panel de navegación, haga clic con el botón derecho en la consulta NextBirthDays y, a continuación, haga clic en Vista Diseño.

  2. En la cuadrícula de diseño de la consulta, en la columna a la derecha de FechaNacido, escriba lo siguiente:
    MonthBorn: DatePart("m",[BirthDate]).
    Esta expresión extrae el mes de BirthDate mediante la función DatePart.

  3. En la siguiente columna de la cuadrícula de diseño de la consulta, escriba lo siguiente:
    DayOfMonthBorn: DatePart("d",[BirthDate])Esta expresión extrae el día del mes desde BirthDate mediante la
    función DatePart.

  4. Desactive las casillas de la fila Mostrar para cada una de las dos expresiones que acaba de introducir.

  5. Haga clic en la fila Ordenar para cada expresión y, a continuación, seleccione Ascendente.

  6. En la fila Criterios de la columna Fecha de nacimiento, escriba la siguiente expresión:
    Mes([Fecha de nacimiento]) > Mes(Fecha()) O Mes([Fecha de nacimiento])= Mes(Fecha()) Y Día([Fecha])>Día(Fecha())Esta expresión
    hace lo siguiente:

    • Month( [Birth Date]) > Month(Date()) especifica que la fecha de nacimiento de cada empleado se encuentra en un mes futuro.

    • El Mes([Fecha denacimiento])= Mes(Fecha()) Y Día([Fecha de nacimiento])>Día(Fecha()) especifica que si la fecha de nacimiento se produce en el mes actual, el cumpleaños corresponde al día actual o después de él.

      En resumen, esta expresión excluye los registros en los que el cumpleaños se produce entre el 1 de enero y la fecha actual.

      Sugerencia:  Para obtener más ejemplos de expresiones de criterios de consulta, vea el artículo Ejemplos de criterios de consulta.

  7. En la pestaña Diseño, en el grupo Configurar consulta, escriba 3 en el cuadro Retorno.

  8. En la pestaña Diseño, en el grupo Resultados, haga clic en Ejecutar Imagen del botón.

Nota:  En su propia consulta con sus propios datos, es posible que a veces vea más registros de los especificados. Si los datos contienen varios registros que comparten un valor que se encuentra entre los valores superiores, la consulta devolverá todos estos registros incluso si significa devolver más registros de los que quería.

Volver al principio

Buscar las fechas más o menos recientes para grupos de registros

Use una consulta de totales para buscar las fechas más tempranas o más recientes de los registros que se encuentran en grupos, como eventos agrupados por ciudad. Una consulta de totales es una consulta de selección que usa funciones de agregado (como Agrupar por , Men, Max, Contar, Primeray Última) para calcular valores para cada campo de salida.

Incluya el campo que desea usar para categorías ( para agrupar por ) y el campo con valores que desea resumir. Si incluye otros campos de salida (por ejemplo, los nombres de los clientes al agrupar por tipo de evento), la consulta también usará esos campos para crear grupos, cambiando los resultados para que no respondan a su pregunta original. Para etiquetar las filas con otros campos, cree una consulta adicional que use la consulta de totales como origen y agregue los campos adicionales a esa consulta.

Sugerencia:  Crear consultas en pasos es una estrategia muy eficaz para responder a preguntas más avanzadas. Si tiene problemas para que una consulta complicada funcione, considere si podría dividirla en una serie de consultas más sencillas.

Crear una consulta de totales

Este procedimiento usa la tabla de ejemplo Eventos y la tabla de ejemplo EventType para responder a esta pregunta:

¿Cuándo fue el evento más reciente de cada tipo de evento, excluyendo los conciertos?

  1. En la pestaña Crear del grupo Consultas, haga clic en Diseño de consulta.

  2. Haga doble clic en las tablas Events y EventType.
    Cada tabla aparece en la sección superior del diseñador de consultas.

  3. Haga doble clic en el campo EventType de la tabla EventType y en el campo EventDate de la tabla Eventos para agregar los campos a la cuadrícula de diseño de la consulta.

  4. En la cuadrícula de diseño de la consulta, en la fila Criterios del campo EventType, escriba<>Concert.

    Sugerencia:  Para obtener más ejemplos de expresiones de criterios, vea el artículo Ejemplos de criterios de consulta.

  5. En la pestaña Diseño, en el grupo Mostrar u ocultar, haga clic en Totales.

  6. En la cuadrícula de diseño de la consulta, haga clic en la fila Total del campo EventDate y, a continuación, haga clic en Máx.

  7. En el grupo Resultados de la pestaña Diseño, haga clic en Ver y, después, en Vista SQL.

  8. En la SQL, al final de la cláusula SELECT, justo después de la palabra clave AS, reemplace MaxOfEventDate por MostRecent.

  9. Guarde la consulta como MostRecentEventByType.

Crear una segunda consulta para agregar más datos

Este procedimiento usa la consulta MostRecentEventByType del procedimiento anterior para responder a esta pregunta:

¿Quién era el cliente en el evento más reciente de cada tipo de evento?

  1. En la pestaña Crear del grupo Consultas, haga clic en Diseño de consulta.

  2. En la pestaña Consultas, haga doble clic en la consulta MostRecentEventByType.

  3. En la pestaña Tablas, haga doble clic en la tabla Eventos y en la tabla Clientes.

  4. En el diseñador de consultas, haga doble clic en los siguientes campos:

    1. En la tabla Eventos, haga doble clic en Tipo De Evento.

    2. En la consulta MostRecentEventByType, haga doble clic en MostRecent.

    3. En la tabla Clientes, haga doble clic en Empresa.

  5. En la cuadrícula de diseño de la consulta, en la fila Ordenar de la columna EventType, seleccione Ascendente.

  6. En la pestaña Diseño, en el grupo Resultados, haga clic en Ejecutar.

Volver al principio

¿Necesita más ayuda?

¿Quiere más opciones?

Explore las ventajas de las suscripciones, examine los cursos de aprendizaje, aprenda a proteger su dispositivo y mucho más.

Las comunidades le ayudan a formular y responder preguntas, enviar comentarios y leer a expertos con conocimientos extensos.

¿Le ha sido útil esta información?

¿Cuál es tu grado de satisfacción con la calidad del lenguaje?
¿Qué ha afectado a su experiencia?
Si presiona Enviar, sus comentarios se usarán para mejorar los productos y servicios de Microsoft. El administrador de TI podrá recopilar estos datos. Declaración de privacidad.

¡Gracias por sus comentarios!

×