Buscar, ocultar o eliminar datos duplicados

En este artículo se explica cómo buscar y ocultar o eliminar los datos duplicados mediante Microsoft Office Access 2007. En general, se deben eliminar los valores duplicados siempre que sea posible con el fin de reducir costos y aumentar la precisión de los datos. Office Access 2007 permite buscar y ocultar o eliminar de varias maneras los valores duplicados. En este artículo se explica cómo usar los métodos más comunes.

¿Qué desea hacer?


Obtener información sobre los datos duplicados

Una de las razones primordiales del uso de una base de datos relacional es la de evitar los datos duplicados. No obstante, a lo largo de la vida útil de las bases de datos, a menudo adquieren valores duplicados, especialmente cuando son varios los usuarios los que proporcionan datos. En general, al eliminar los datos duplicados, se ahorra dinero en materia de almacenamiento y se aumenta la precisión de los datos. Esa precisión, a su vez, puede ayudar a tomar mejores decisiones corporativas. Por ejemplo, si se indica varias veces un pedido de venta, puede que el cliente reciba mercancías que no necesite y esa redundancia puede aumentar los costos de envío y de contabilidad.

Qué significa realmente la duplicación

Antes de proceder a la identificación y eliminación de registros duplicados, recuerde que el conocimiento de los datos es fundamental. A diferencia del proceso de diseño de las bases de datos, no se puede observar un conjunto de reglas o procedimientos específicos para buscar y eliminar con precisión los registros duplicados. Recuerde un hecho: las consultas de bases de datos pueden devolver lo que parecen registros duplicados, aunque en realidad esos resultados son datos válidos. La duplicación aparente suele suceder cuando no se incluyen en la consulta campos que identifiquen cada registro de manera única. Para obtener más información sobre cómo incluir en una consulta los campos necesarios y evitar los falsos duplicados, vea la sección Cuándo los registros no son duplicados, que aparece más adelante en este artículo.

Además, recuerde que no se pueden eliminar todos los datos duplicados porque algunas duplicaciones son necesarias para que funcione correctamente la base de datos. Dicho de otro modo, las bases de datos pueden contener redundancias necesarias e innecesarias, y sólo se deben de eliminar las redundancias innecesarias.

Las redundancias necesarias suelen dividirse en dos categorías. El primer tipo de redundancia permite el funcionamiento de la base de datos. Por ejemplo, se duplican los datos en un campo de clave principal cuando se necesita establecer una relación uno a varios o varios a varios entre las tablas.

El segundo tipo de redundancia necesaria surge cuando se usa la base de datos. Por ejemplo, puede que se introduzca varias veces el nombre de una ciudad, un proveedor o un nombre propio como Juan Martín. En este caso, no existe peligro de duplicación porque otros campos de la base de datos (como valores de clave principal, direcciones y códigos postales) contendrán suficiente información única para evitar que los registros se consideren como duplicados.

Las redundancias innecesarias pueden producirse de varias maneras:

  • Dos o más registros pueden contener campos duplicados.    Puede que dos registros se consideren como duplicados, aun cuando no todos los campos de los registros contengan valores coincidentes. Por ejemplo, en esta ilustración, se ven dos registros para Antonio Moreno Taquería.

Registros duplicados para un cliente en la tabla Compradores

A pesar de que cada registro tenga un Id. de cliente único (el valor en la columna situada más a la izquierda), los valores de los campos Nombre, Dirección y Ciudad coinciden. En estos casos, incluso una coincidencia parcial puede ser un buen motivo para usar sus conocimientos corporativos y comprobar los registros para ver si se trata de registros duplicados.

  • Dos o más tablas pueden contener datos similares.    Por ejemplo, puede que una tabla denominada Compradores y otra tabla denominada Clientes tengan registros para los mismos clientes.

Tablas Clientes y Compradores con datos superpuestos

A pesar de tener estructuras diferentes, ambas tablas contienen el mismo tipo de información (es decir, datos de clientes), por lo que se podría considerar la posibilidad de combinar los valores únicos (es decir, no duplicados) en una sola tabla y eliminar la otra tabla.

  • Dos o más bases de datos pueden contener datos similares.    Si dos o más bases de datos contienen datos similares o se hereda una base de datos que coincide parcialmente con una base de datos activa, es preciso comparar los datos y la estructura de las bases de datos para posteriormente dar los pasos necesarios con el fin de consolidarlos.

La comparación manual de bases de datos, incluso las de tamaño reducido, no es una tarea fácil. Si necesita ayuda con una comparación, hay varios proveedores que venden herramientas para comparar el contenido y la estructura de bases de datos de Access.

Vaya a la sección de administración de bases de datos del Catálogo de soluciones de Microsoft Office para ver cuáles son las actuales herramientas de administración de datos.

 Nota   Si procede a eliminar datos duplicados de tablas y sigue viendo datos duplicados en un formulario o informe, puede que sea debido a un diseño incorrecto del formulario o informe. Asegúrese de que las tablas y consultas subyacentes están correctamente unidas y que las secciones de formulario o informe no incluyen más de un control enlazado al mismo origen de control.

Para obtener más información sobre el diseño de informes, vea el artículo Modificar, editar o cambiar un informe.

Cuándo los registros no son duplicados

En algunos casos, como cuando se observan los datos devueltos por una consulta, se podría ver lo que parecen ser registros duplicados, aun cuando las tablas subyacentes contengan sólo registros únicos. Los problemas pueden surgir cuando la vista no incluye los campos que identifiquen los registros de manera única. Por ejemplo, en esta ilustración se muestran los datos devueltos por una consulta.

Una vista que no incluye un campo que identifique los registros de manera única

En esta vista, varios registros parecen ser duplicados. Si se agrega uno o varios campos adicionales a la consulta, como los nombres de los clientes o los campos de clave principal de cada pedido (Id. de pedido), se verá que cada registro es realmente único:

Ahora, la vista incluye el campo Id. de pedido para eliminar los registros duplicados

En general, cuando se crea una consulta, se debe incluir el campo o los campos que identifican cada registro de manera única. Normalmente, un campo de clave principal tiene esa función, pero se pueden usar combinaciones de otros campos. Por ejemplo, pueden haber muchas instancias de un nombre de contacto y numerosas instancias de un nombre de ciudad, pero si se incluyen un número de teléfono y una dirección, la combinación de esos datos debe convertir cada registro en registro único.

Factores que deben considerarse en los casos de duplicación

Varios factores determinan la manera en que se tratan los registros duplicados:

  • Naturaleza y alcance de la duplicación    ¿Se ven datos duplicados en una sola tabla o se ven dos tablas similares (en la misma base de datos o en dos bases de datos distintas) con datos superpuestos? O bien, ¿se ven registros duplicados en una vista basada en dos o más tablas relacionadas?
  • Requisitos específicos del usuario    ¿Qué desea hacer con los datos duplicados? ¿Desea eliminar los registros de la base de datos o sólo ocultarlos? O bien, ¿desea contar, sumar o calcular el promedio de los valores de los registros duplicados? ¿Tiene importancia qué registros duplicados se eliminan o se ocultan? Si la tiene, ¿desea revisar y eliminar manualmente los registros o eliminar los registros basándose en una condición? ¿Desea actualizar o consolidar uno o varios registros antes de comenzar a eliminar registros?

Las respuestas a esas preguntas (o a este tipo de preguntas), más los conocimientos que tiene el usuario de los datos, deben permitirle elaborar un plan para hacer frente a los datos redundantes.

Preparativos generales para quitar duplicados

Si se opta por eliminar los registros duplicados, es preciso considerar primero las relaciones entre las tablas. Normalmente, la mayoría de las bases de datos usan relaciones uno a varios. Por ejemplo, tiene un número reducido de clientes, pero cada cliente realiza numerosos pedidos. Como resultado, la tabla de los datos de clientes reside en el lado "uno" de la relación, y los datos de pedido residen en el lado "varios" de la relación.

Recuerde esta regla cuando proceda: si los datos que desea eliminar residen en el lado "varios" de una relación, podrá eliminar datos sin tener que realizar ninguna acción adicional. Sin embargo, si los datos residen en el lado "uno", es preciso configurar una propiedad en la relación. En caso contrario, Access impedirá la eliminación.

Para obtener más información sobre cómo eliminar datos que residen en el lado "uno", vea el artículo Usar una consulta de eliminación para eliminar uno o varios registros de una base de datos.

Antes de comenzar a eliminar datos redundantes, considere una o varias de las siguientes maneras para preparar la base de datos:

  • Asegúrese de que la base de datos no es de sólo lectura.
  • Asegúrese de que tiene los permisos necesarios para editar o eliminar registros de la base de datos.
  • Pida a todos los demás usuarios de la base de datos que cierren los objetos con los que desee trabajar. De este modo, ayudará a evitar infracciones de bloqueo.

 Sugerencia   Si hay un gran número de usuarios conectados a la base de datos, puede que tenga que cerrar la base de datos y, a continuación, abrirla de nuevo en modo exclusivo. Para ello, haga clic en el botón Microsoft OfficeImagen del botón en Access y, a continuación, haga clic en Abrir. Busque la base de datos, selecciónela, haga clic en la flecha situada junto al botón Abrir y, a continuación, haga clic en Abrir en modo exclusivo.

Abrir un archivo en modo Exclusivo

  • Cree una copia de seguridad de la base de datos antes de eliminar registros. Las operaciones de eliminación no se pueden invertir ni deshacer. La única manera de recuperar los registros eliminados es restaurarlos a partir de una copia de seguridad. Puede que una operación de eliminación también elimine registros de tablas relacionadas, por lo que se recomienda crear una copia de seguridad de toda la base de datos antes de iniciar la operación.

Realizar una copia de seguridad de una base de datos

  1. Haga clic en el botón de Microsoft OfficeImagen del botón, haga clic en la flecha al lado de Administrar y, a continuación, haga clic en Realizar copia de seguridad de la base de datos.

Aparece el cuadro de diálogo Guardar como y Access anexa la fecha actual al nombre de archivo. Por ejemplo, en el caso de una base de datos denominada Activos, Access crea el siguiente tipo de nombre de archivo: Activos_29-10-2006.

  1. Acepte el nombre y la ubicación predeterminados, o bien, seleccione otro nombre u otra ubicación y, a continuación, haga clic en Guardar.

Access cierra el archivo original, crea una copia de seguridad y, a continuación, vuelve a abrir el archivo original.

Para revertir a una copia de seguridad, cierre el archivo original y cambie su nombre de modo que se pueda usar el nombre de la versión original para la copia de seguridad. Asigne el nombre de la versión original a la copia de seguridad y, a continuación, ábrala en Access.

Volver al principio Volver al principio

Preparar datos de ejemplo

Las secciones ¿Cómo? de este artículo proporcionan tablas de datos de ejemplo. Los pasos ¿Cómo? usan las tablas de ejemplo para explicar cómo funcionan las consultas. Si lo prefiere, opcionalmente puede incorporar o importar las tablas de ejemplo en una base de datos nueva o ya existente.

Access proporciona varios modos de agregar estas tablas de ejemplo a una base de datos. Puede incorporar los datos manualmente, puede copiar cada tabla en un programa de hoja de cálculo (como Office Excel 2007) y, a continuación, importar las hojas de cálculo en Access, o puede pegar los datos en un editor de texto, como el Bloc de notas y, a continuación, importar los datos de los archivos de texto resultantes.

Los pasos de esta sección explican como incorporar datos manualmente en una hoja de datos vacía, y también como copiar las tablas de ejemplo en Excel y, a continuación, importar dichas tablas en Access 2007. Para obtener más información sobre la creación e importación de datos de texto, vea el artículo Importar o vincular datos de un archivo de texto.

Los pasos ¿Cómo? de este artículo usan las siguientes tablas de ejemplo:

La tabla Clientes:

Nombre de compañía Nombre del contacto Dirección Ciudad Código postal Tel.
Baldwin Museum of Science Leonor Bernabé Rodeo de la Cruz 477 Caracas 12345 (505) 555-2122
Blue Yonder Airlines David Santos Carlos Pellegrini 1263 San Cristóbal 23456 (104) 555-2123
Coho Winery Ezequiel Picó C/ Córcega 452 I. de Margarita 34567 (206) 555-2124
Contoso Pharmaceuticals José Andrés Dosil Av. Benavides 4858 Lima 45678 (171) 555-2125
Fourth Coffee Julián Precio Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2126
Coho Winery Cristina Portillo C/ Córcega 452-454 I. de Margarita 34567 (206) 555-2125
Humongous Insurance Esteban Puerto Cerrito 333 Buenos Aires 01234 (916) 555-2128
Trey Research María Barrera E. Zolá 1715 Barinas 43210 (503) 555-2129
Fourth Coffee Ana Trujillo Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2233

La tabla Empleados:

Apellido Nombre Dirección Ciudad Fecha de nacimiento Fecha de contratación
Bernabé Leonor Rodeo de la Cruz 477 Caracas 05.02.1968 10.06.1994
Santos David Carlos Pellegrini 1263 San Cristóbal 22.05.1957 22.11.1996
Ezequiel Picó C/ Córcega 452 I. de Margarita 11.11.1960 11.03.2000
Dosil José Andrés Av. Benavides 4858 Lima 22.03.1964 22.06.1998
Precio Julián Av. de la Constitución 2222 Ciudad de México 05.06.1972 05.01.2002
Portillo Cristina C/ Córcega 452-454 I. de Margarita 23.01.1970 23.04.1999
Puerto Esteban Cerrito 333 Buenos Aires 14.04.1964 14.10.2004
Barrera María E. Zolá 1715 Barinas 29.10.1959 29.03.1997
Dosil José Andrés Av. Benavides 4858 Lima 22.03.1964 20.06.1998

La tabla Cuantía adeudada:

Nombre de compañía Nombre del contacto Dirección Ciudad Código postal Tel. Cuantía pagadera
Baldwin Museum of Science Leonor Bernabé Rodeo de la Cruz 477 Caracas 12345 (505) 555-2122 556,78 $
Blue Yonder Airlines David Santos Carlos Pellegrini 1263 San Cristóbal 23456 (104) 555-2123 1.893,24 $
Coho Winery Ezequiel Picó C/ Córcega 452 I. de Margarita 34567 (206) 555-2124 321,79 $
Contoso Pharmaceuticals José Andrés Dosil Av. Benavides 4858 Lima 45678 (171) 555-2125 457,68 £
Fourth Coffee Julián Precio Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2126 98,75 $
Coho Winery Cristina Portillo C/ Córcega 452-454 I. de Margarita 34567 (206) 555-2125 321,79 $
Humongous Insurance Esteban Puerto Cerrito 333 Buenos Aires 01234 (916) 555-2128 297,45 $
Trey Research María Barrera E. Zolá 1715 Barinas 43210 (503) 555-2129 509,09 $
Fourth Coffee Ana Trujillo 2222 Av. de la Constitución Ciudad de México 56789 (7) 555-2233 98,75 $

La tabla Clientes:

Nombre Dirección Ciudad Tel. Fax
Baldwin Museum of Science Rodeo de la Cruz 477 Caracas (505) 555-2122 (505) 555-2122
Blue Yonder Airlines Carlos Pellegrini 1263 San Cristóbal (104) 555-2123 (104) 555-2123
Coho Winery C/ Córcega 452 I. de Margarita (206) 555-2124 (206) 555-2124
Contoso Pharmaceuticals Av. Benavides 4858 Lima (171) 555-2125 (171) 555-2125
Fourth Coffee Av. de la Constitución 2222 Ciudad de México (7) 555-2126 (7) 555-2126
Consolidated Messenger C/ Córcega 452-454 I. de Margarita (206) 555-2125 (206) 555-2129
Graphic Design Institute Cerrito 333 Buenos Aires (916) 555-2128 (916) 555-2128
Litware, Inc. Carrera 22 con Ave. Carlos Soublette #8-35 Barinas (503) 555-2129 (503) 555-2110
Tailspin Toys Carrera 22 con Ave. Carlos Soublette #9-37 Barinas (503) 555-2233 (503) 555-2239

Escribir los datos de ejemplo manualmente

  1. En el grupo Tablas de la ficha Crear, haga clic en Tabla.

Imagen de la Cinta de opciones de Access

Access agrega una nueva tabla vacía a la base de datos.

 Nota   No es necesario seguir este paso si abre una nueva base de datos vacía, pero sí deberá seguirlo si debe agregar una tabla a la base de datos.

  1. Haga doble clic en la primera celda de la fila de encabezado y escriba el nombre del campo en la tabla de ejemplo.

De forma predeterminada, Access identifica los campos vacíos de la fila de encabezado con el texto Agregar nuevo campo, de este modo:

Un campo nuevo de una hoja de datos

  1. Use las teclas de flecha para moverse a la siguiente celda de encabezado vacía y, a continuación, escriba el segundo nombre de campo (también puede presionar TAB o hacer doble clic en la nueva celda). Repita este paso hasta que escriba todos los nombres de campo.
  2. Escriba los datos en la tabla de ejemplo.

Cuando se incorporan los datos, Access deduce el tipo de datos de cada campo. Si no está familiarizado con las bases de datos relacionales, debe establecer un tipo de datos específico, por ejemplo Número, Texto o Fecha/Hora, para cada campo de las tablas. El establecimiento de los tipos de datos asegura una incorporación de datos adecuada y también sirve para evitar errores, como usar un número de teléfono en un cálculo. Para estas tablas de ejemplo, debe dejar que Access deduzca el tipo de datos.

  1. Cuando termine de incorporar los datos, haga clic en Guardar.

Método abreviado de teclado  Presione CTRL+G.

Aparecerá el cuadro de diálogo Guardar como.

  1. En el cuadro Nombre de tabla, escriba el nombre de la tabla de ejemplo y, a continuación, haga clic en Aceptar.

Puede usar el nombre de cada tabla de ejemplo porque las consultas de las secciones ¿Cómo? usan dichos nombres.

Crear las hojas de cálculo de ejemplo

  1. Inicie su programa de hoja de cálculo y cree un nuevo archivo vacío. Si usa Excel, se crea un nuevo libro vacío de forma predeterminada.
  2. Copie la primera tabla de ejemplo de la sección anterior y péguela en la primera hoja de cálculo, empezando por la primera celda.
  3. Mediante la técnica proporcionada por el programa de hoja de cálculo, asigne a la hoja de cálculo el mismo nombre que la tabla de ejemplo. Así, si la tabla de ejemplo se denomina Categorías, asigne a la hoja de cálculo el mismo nombre.
  4. Repita los pasos 2 y 3 copiando cada tabla de ejemplo en una hoja de cálculo en blanco y, a continuación, cambiándole el nombre de ésta.

 Nota   Puede que tenga que agregar hojas de cálculo al archivo de hoja de cálculo. Para obtener información sobre cómo realizar esta tarea, vea la ayuda del programa de hoja de cálculo.

  1. Guarde el libro en una ubicación apropiada del equipo o de la red y continúe con los siguientes pasos.

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

  1. En una base de datos nueva o existente:

En el grupo Importar de la ficha Datos externos, haga clic en Excel.

Imagen de la Cinta de opciones de Access

O bien,

Haga clic en Más y seleccione un programa de hoja de cálculo de la lista.

Aparecerá el cuadro de diálogo Obtener datos externos - Nombre del programa Hoja de cálculo de Excel.

  1. Haga clic en Examinar, abra el archivo de hoja de cálculo que creó en los pasos anteriores y, a continuación, haga clic en Aceptar.

Se iniciará el Asistente para importación de hojas de cálculo.

  1. De forma predeterminada, el asistente selecciona la primera hoja de cálculo del libro (Compradores, si ha seguido los pasos descritos en la anterior sección), y los datos de la hoja de cálculo aparecen en la sección inferior de la página del asistente. Haga clic en Siguiente.
  2. En la siguiente página del asistente, haga clic en Primera fila contiene encabezados de columna y, a continuación, haga clic en Siguiente.
  3. De manera opcional, en la siguiente página, use los cuadros de texto y listas que aparecen bajo Opciones de campo para cambiar los nombres de los campos y los tipos de datos u omitir campos de la operación de importación. En caso contrario, haga clic en Siguiente.
  4. Mantenga seleccionada la opción Permitir a Access agregar la clave principal y, a continuación, haga clic en Siguiente.
  5. De forma predeterminada, Access aplica el nombre de la hoja de cálculo a la nueva tabla. Acepte el nombre o especifique otro y, a continuación, haga clic en Finalizar.
  6. Repita los pasos 1 a 7 hasta que haya creado una tabla de cada hoja de cálculo del libro.

Volver al principio Volver al principio

Buscar y editar, ocultar o eliminar los datos duplicados de una sola tabla

En las siguientes secciones se explican las maneras más comunes de buscar y editar, ocultar o eliminar los valores duplicados de una sola tabla.



Buscar registros cuando algunos campos coinciden parcial o totalmente

El proceso de buscar los registros que contengan valores parcial o totalmente coincidentes se compone de los siguientes pasos:

  • Cree una consulta mediante el Asistente para consultas de buscar duplicados. De forma predeterminada, la consulta devuelve los registros coincidentes únicamente si los valores de cada campo coinciden en todos los caracteres. Si necesita buscar coincidencias parciales, puede usar una expresión en la consulta, o bien, puede modificar el código SQL (Lenguaje de consulta estructurado).
  • De manera opcional, edite los valores de campo o elimine los registros cuando vea los resultados de la consulta en la vista Hoja de datos.
  • De manera opcional, modifique el código SQL (Lenguaje de consulta estructurado) en la consulta para buscar los valores que coincidan parcialmente. Si no modifica el código SQL, la consulta devolverá únicamente los registros donde los valores de los campos especificados coincidan en todos los caracteres.

En esta sección se explica cómo crear una consulta de duplicados y cómo modificar la consulta para que busque coincidencias parciales. En los pasos, se usa la tabla Compradores que figura a continuación. Para usar la tabla en una base de datos, vea la sección Preparar datos de ejemplo, que aparece anteriormente en este artículo. Puede adaptar los pasos a sus propios datos.

Nombre de compañía Nombre del contacto Dirección Ciudad Código postal Tel.
Baldwin Museum of Science Leonor Bernabé Rodeo de la Cruz 477 Caracas 12345 (505) 555-2122
Blue Yonder Airlines David Santos Carlos Pellegrini 1263 San Cristóbal 23456 (104) 555-2123
Coho Winery Ezequiel Picó C/ Córcega 452 I. de Margarita 34567 (206) 555-2124
Contoso Pharmaceuticals José Andrés Dosil Av. Benavides 4858 Lima 45678 (171) 555-2125
Fourth Coffee Julián Precio Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2126
Coho Winery Cristina Portillo C/ Córcega 452-454 I. de Margarita 34567 (206) 555-2125
Humongous Insurance Esteban Puerto Cerrito 333 Buenos Aires 01234 (916) 555-2128
Trey Research María Barrera E. Zolá 1715 Barinas 43210 (503) 555-2129
Fourth Coffee Ana Trujillo Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2233

Crear la consulta de duplicados

  1. En el grupo Otros de la ficha Crear, haga clic en Asistente para consultas.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Nueva consulta, haga clic en Asistente para consultas de buscar duplicados y, a continuación, haga clic en Aceptar.

Si aparece un mensaje de alerta que indica que no está instalada la característica, haga clic en para instalar el asistente.

  1. En la lista de tablas, seleccione la tabla que contenga los datos duplicados y, a continuación, haga clic en Siguiente.
  2. En la lista de campos disponibles, seleccione únicamente el campo o los campos que contengan información duplicada. Si usa la tabla Compradores, agregue sólo los campos Nombre de compañía, Dirección y Ciudad, porque éstos son los únicos campos que contienen valores que coinciden en todos los caracteres. A continuación, haga clic en Siguiente.

 Nota   Si los campos agregados en este paso no contienen valores que coincidan en todos los caracteres, puede que la consulta no devuelva resultados.

  1. En la siguiente lista de campos disponibles, seleccione el campo o los campos que contengan los datos que desee examinar o actualizar, o bien, los que contengan datos que pueden ayudar a diferenciar los registros duplicados de los no duplicados. Si usa la tabla Compradores, agregue los campos Nombre del contacto y Tel., porque los datos incluidos en esos campos pueden ayudar a buscar los valores duplicados y posiblemente identificar el motivo por el que se introdujeron los valores. Haga clic en Siguiente.
  2. Acepte el nombre sugerido (Buscar duplicados de Compradores o especifique un nombre y, a continuación, haga clic en Finalizar para ejecutar la consulta. Si ha usado la tabla Compradores, verá este resultado:
Nombre de compañía Dirección Ciudad Nombre del contacto Tel.
Fourth Coffee Av. de la Constitución 2222 Ciudad de México Julián Precio (7) 555-2126
Fourth Coffee Av. de la Constitución 2222 Ciudad de México Ana Trujillo (7) 555-2233
  1. Al crear la tabla Compradores, puede que haya visto más de dos registros duplicados (la tabla contiene cuatro duplicados). No se ven los otros duplicados porque los valores en el campo Dirección no coinciden en todos los caracteres. Puede modificar la consulta para que devuelva valores que coincidan parcialmente. En los siguientes pasos se explica cómo hacerlo.

Personalizar la consulta para buscar coincidencias parciales

  1. Cambie la consulta a la vista SQL. Para ello:
    • Haga clic con el botón secundario del mouse en la ficha de documentos de la consulta y, a continuación, haga clic en Vista SQL.
    • En el panel de exploración, haga clic con el botón secundario en la consulta y, a continuación, haga clic en Vista SQL.
  2. Modifique el código SQL para buscar y comparar valores parciales.

Si usó la tabla Compradores en los pasos anteriores, verá la siguiente instrucción:

SELECT Compradores.[Nombre de compañía], Compradores.[Dirección], Compradores.[Ciudad], Compradores.[Nombre del contacto], Compradores.[Tel.]
FROM Compradores
WHERE (((Compradores.[Nombre de compañía]) In (SELECT [Nombre de compañía] FROM [Compradores] As Tmp GROUP BY [Nombre de compañía],[Dirección],[Ciudad] HAVING Count(*)>1 And [Dirección] = [Compradores].[Dirección] And [Ciudad] = [Compradores].[Ciudad])))
ORDER BY Compradores.[Nombre de compañía], Compradores.[Dirección], Compradores.[Ciudad];

En este caso, la cláusula WHERE usa una segunda instrucción SELECT para comparar cada registro con todos los demás registros de la tabla con el fin de identificar conjuntos de duplicados.

Supongamos que necesita modificar el campo Dirección para que se devuelvan coincidencias parciales. En la siguiente tabla se muestra cómo modificar la instrucción de modo que coincidan únicamente los siete primeros caracteres de cada campo. Las modificaciones aparecen en negrita:

Instrucción SQL Descripción
SELECT Compradores.[Nombre de compañía], Compradores.[Dirección], Compradores.[Ciudad], Compradores.[Nombre del contacto], Compradores.[Tel.] Sin cambios. Desea ver los mismos campos, inclusive todo el campo Dirección para cada conjunto de registros duplicados.
FROM Compradores Sin cambios.
WHERE (((Compradores.Nombre de compañía) In (SELECT [Nombre de compañía] FROM [Compradores] As Tmp GROUP BY [Nombre de compañía],Left([Dirección],7),[Ciudad] HAVING Reemplace el campo ([Dirección]) con una llamada de función que se ejecuta en el campo Dirección (Left([Dirección],7)) para determinar la duplicación. De este modo, se comprueban los siete primeros caracteres del campo Dirección en vez del valor de campo completo. Para que coincidan menos caracteres, especifique un número más reducido. En caso contrario, especifique un número más alto.
Count(*)>1 And Left([Dirección],7) =Left([Compradores].[Dirección],7) And [Ciudad] = [Compradores].[Ciudad]))) Para comparar los siete primeros caracteres del campo Dirección de un registro con los de otro registro, reemplace [Dirección] con la llamada de función Left([Dirección],7) y reemplace [Compradores].[Dirección] con la llamada de función Left([Compradores].[Dirección],7).
ORDER BY Compradores.Nombre de compañía, Compradores.Dirección, Compradores.Ciudad; Sin cambios.
  1. Cuando termine de modificar la instrucción, haga clic en EjecutarImagen del botón para ejecutar la consulta y mostrar los resultados en la vista Hoja de datos.

La consulta devuelve los cuatro registros duplicados ya que ahora sólo hace coincidir los siete primeros caracteres (empezando desde la izquierda) del campo Dirección:

Nombre de compañía Dirección Ciudad Nombre del contacto Tel.
Coho Winery C/ Córcega 452 I. de Margarita Ezequiel Picó (206) 555-2124
Coho Winery C/ Córcega 452-454 I. de Margarita Cristina Portillo (206) 555-2125
Fourth Coffee Av. de la Constitución 2222 Ciudad de México Julián Precio (7) 555-2126
Fourth Coffee Av. de la Constitución 2222 Ciudad de México Ana Trujillo (7) 555-2233

Editar manualmente los registros

  1. Abra, en la vista Hoja de datos, la consulta creada en los anteriores pasos.
  2. Siga uno de estos procedimientos:
    • Para editar el valor de un campo, seleccione el campo y especifique un nuevo valor.
    • Para eliminar un registro completo (una fila), haga clic en el selector de fila (el cuadro vacío situado junto a la fila) y presione SUPRIMIR.

 Nota   Si hay un gran número de registros duplicados (más de lo que puede eliminar manualmente), se pueden eliminar esos registros creando y ejecutando una consulta de eliminación. Para obtener información sobre los pasos básicos para crear y ejecutar una consulta de eliminación, vea la sección Usar una consulta de eliminación para eliminar registros duplicados, que aparece más adelante en este tema.

Para obtener información más completa sobre el uso de las consultas de eliminación, incluida información sobre cómo planear una eliminación, cambiar las relaciones entre las tablas y eliminar datos relacionados, vea el artículo Usar una consulta de eliminación para eliminar uno o varios registros de una base de datos.

Principio de sección

Mostrar registros únicos ocultando los duplicados

La mayoría de las tablas de base de datos tienen un campo que identifica de manera única cada registro, normalmente un campo de clave principal. Cuando diseña una consulta y oculta u omite esos tipos de campo, puede que vea lo que parecen ser registros duplicados porque coinciden los valores de todos los campos devueltos.

Por ejemplo, en esta ilustración se muestra un resultado de consulta donde dos pedidos (en el cuadro rojo) parecen ser duplicados.

Una consulta basada en la tabla Compradores, donde dos registros tienen valores coincidentes en todos los campos

Sin embargo, si la consulta incluyera un campo de clave principal, como un Id. de pedido, o algún otro campo que identificara de manera única cada registro, como una fecha de envío, vería que los registros no son duplicados. En esta sección se explica cómo ocultar los registros duplicados donde coinciden los valores de todos los campos devueltos por la consulta. Por ejemplo, puede ocultar uno de los registros de Antonio Moreno Taquería, pero no puede ocultar los registros de Blauer See Delikatessen ya que los campos Dirección contienen valores distintos.

Recuerde esta regla cuando proceda: dos o más registros se consideran duplicados únicamente cuando todos los campos en los resultados de consulta contienen los mismos valores. Si difieren los valores de incluso un solo campo, cada registro es único y no se pueden ocultar esos registros mediante las técnicas que se muestran aquí. Si desea ocultar ese tipo de registros duplicados, use una consulta de totales con una función de agregado, como PRIMERO, MÍN, MÁX, etc. Para obtener información sobre cómo hacerlo, vea la sección Mostrar registros distintos especificando el duplicado que aparece en los resultados, que aparece más adelante en este artículo.

Access permite mostrar de dos formas sólo valores únicos en un conjunto de resultados de una consulta:

  • Si está oculto el campo de clave principal (o algún otro campo que identifique un registro como único), muestre esa columna.
  • Cree una consulta de selección y, a continuación, establezca la propiedad Valores únicos de la consulta en . Cuando la consulta detecte valores duplicados, mostrará sólo uno de esos duplicados (el primero que encuentre) y ocultará el resto.

En esta sección se explica cómo usar las dos técnicas.

Mostrar campos ocultos

  1. Con la consulta abierta en la vista Hoja de datos, haga clic con el botón secundario del mouse en cualquier lugar de la fila de encabezados (la fila que contiene los encabezados de columna) y haga clic en Mostrar columnas.
  2. En el cuadro de diálogo Mostrar columnas, active la casilla de verificación situada junto a cada uno de los campos que desee agregar a la hoja de datos y, a continuación, haga clic en Aceptar.

Establecer la propiedad Valores únicos

 Nota   Tras establecer la propiedad Valores únicos de una consulta en , no se pueden editar los valores de campo ni eliminar datos cuando la consulta está en la vista Hoja de datos. Para modificar o eliminar datos, abra la tabla subyacente en la vista Hoja de datos.

  1. En el grupo Otros de la ficha Crear, haga clic en Asistente para consultas.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Nueva consulta, haga clic en Asistente para consultas sencillas y, a continuación, haga clic en Aceptar.

Si aparece un mensaje de alerta que indica que no está instalada la característica, haga clic en para instalar el asistente.

  1. En la lista de tablas, seleccione la tabla que contenga los registros duplicados y, a continuación, haga clic en Siguiente.
  2. En la lista de campos disponibles, seleccione únicamente el campo o los campos que contengan la información duplicada y, a continuación, haga clic en Siguiente.
  3. Haga de nuevo clic en Siguiente sin seleccionar ningún campo adicional. Si agrega otros campos, puede que Access trate algunos registros duplicados como registros únicos.
  4. Acepte el nombre sugerido de la consulta o escriba un nombre, haga clic en Modificar el diseño de consulta y, a continuación, haga clic en Finalizar para abrir la consulta en la vista Diseño.
  5. Haga clic con el botón secundario del mouse en el área vacía en la mitad superior del diseñador de consultas y, a continuación, haga clic en Propiedades.
  6. En la hoja de propiedades, busque la propiedad Valores únicos y cambie su valor a .

Mostrar la hoja de propiedades de la consulta

  1. Haga clic en EjecutarImagen del botón para ejecutar la consulta y mostrar los resultados en la vista Hoja de datos. Si los datos contienen registros duplicados, sólo aparecerá uno de esos registros.

Principio de sección

Mostrar registros distintos especificando el duplicado que aparece en los resultados

Cuando hay registros duplicados, puede que desee ver únicamente los valores distintos, es decir, un registro de cada conjunto de duplicados. Para buscar un registro duplicado específico, se usa un tipo de consulta denominado consulta de totales. Cuando se agregan campos a una consulta de totales, la consulta trata cada campo como un grupo y se puede ejecutar un tipo de función denominado función de agregado con los datos de un grupo. Esas funciones, a su vez, pueden devolver un registro de un conjunto de duplicados.

Se pueden usar una consulta de totales y una función de agregado con esos datos de diferentes maneras:

  • Use la función Primero para que se muestre únicamente el registro que se introdujo primero.
  • Use la función Último para que se muestre únicamente el registro que se introdujo en último lugar.
  • Use la función Máx o Mín para que se muestre únicamente el registro con el menor o el mayor valor en un campo específico. Por ejemplo, puede mostrar el registro con la fecha más reciente mediante la función Máx o mostrar el registro con la fecha más antigua mediante la función Mín.

 Nota   No se pueden modificar los datos devueltos por este tipo de consulta. Para modificar o eliminar datos, abra la tabla subyacente en la vista Hoja de datos.

En esta sección se explica cómo buscar los registros originales, más recientes y más antiguos. En los pasos se usa la tabla Empleados.

Apellido Nombre Dirección Ciudad Fecha de nacimiento Fecha de contratación
Bernabé Leonor Rodeo de la Cruz 477 Caracas 05.02.1968 10.06.1994
Santos David Carlos Pellegrini 1263 San Cristóbal 22.05.1957 22.11.1996
Ezequiel Picó C/ Córcega 452 I. de Margarita 11.11.1960 11.03.2000
Dosil José Andrés Av. Benavides 4858 Lima 22.03.1964 22.06.1998
Precio Julián Av. de la Constitución 2222 Ciudad de México 05.06.1972 05.01.2002
Portillo Cristina C/ Córcega 452-454 I. de Margarita 23.01.1970 23.04.1999
Puerto Esteban Cerrito 333 Buenos Aires 14.04.1964 14.10.2004
Barrera María E. Zolá 1715 Barinas 29.10.1959 29.03.1997
Dosil José Andrés Av. Benavides 4858 Lima 22.03.1964 20.06.1998

Si desea usar la tabla en una base de datos, vea los pasos descritos en Preparar datos de ejemplo, que aparece anteriormente en este artículo.

Usar una consulta de totales.

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Mostrar tabla, haga doble clic en la tabla que contiene los datos duplicados y, a continuación, haga clic en Cerrar.

La tabla aparece en la sección superior del diseñador de consultas.

  1. Agregue únicamente el campo o los campos que contengan los datos duplicados. Puede hacer doble clic en un campo o arrastrarlo desde la ventana de la tabla hasta la fila Campo en la cuadrícula de diseño.

Si usa la tabla de ejemplo Empleados, agregue los campos Apellido, Nombre y Fecha de nacimiento, porque esos campos determinan la duplicación.

  1. Agregue el campo que especifique los criterios de selección.

En la misma tabla Empleados, agregue el campo Fecha de contratación porque ese campo contiene dos valores diferentes para el empleado.

 Nota   No agregue más campos a la cuadrícula. Una consulta de totales debe incluir únicamente el campo o los campos con datos duplicados y otro campo con los datos que se van a usar en la comprobación.

  1. En la ficha Diseño, en el grupo Mostrar u ocultar, haga clic en TotalesImagen del botón. Aparece la fila Total en la cuadrícula de diseño y aparece Agrupar por en las columnas que contienen el campo de tabla.
  2. Deje la fila Total para todos los campos establecida en Agrupar por y, a continuación, haga clic en EjecutarImagen del botón para ejecutar la consulta y mostrar los resultados en la vista Hoja de datos. Si usó los datos de la tabla arriba mencionada, la consulta devolverá dos veces "José Andrés Dosil" porque sus registros duplicados tienen diferentes fechas de contratación.
  3. Cambie a la vista Diseño y especifique una condición para seleccionar un registro entre los duplicados. Para usar los datos de ejemplo, cambie el valor de la columna Fecha de contratación en la fila Total de la siguiente manera:
    • Para ver el registro original, cambie el valor a Primero.
    • Para ver el registro incluido más recientemente, cambie el valor a Último.
    • Para seleccionar un registro basándose en el valor de un campo específico, deberá usar la función Máx o Mín. En este ejemplo, para ver el registro con la fecha de contratación más antigua, cambie el valor a Mín.
  4. Haga clic en EjecutarImagen del botón para ejecutar la consulta y mostrar los resultados en la vista Hoja de datos.

Si la consulta genera los resultados deseados, podrá convertirla en una consulta de eliminación y ejecutarla para eliminar los registros duplicados rápida y fácilmente. Para obtener información sobre cómo ejecutar una consulta de eliminación, vea la sección Usar una consulta de eliminación para eliminar registros duplicados, que aparece más adelante en este artículo.

Principio de sección

Usar funciones de agregado (Cuenta, Suma, Promedio) en registros duplicados

Además de devolver un registro específico de un grupo de duplicados, puede usar las funciones de agregado para contar el número de registros duplicados o resumir los datos de un conjunto de duplicados. Normalmente, estas funciones se ejecutan antes de emprender acciones para consolidar o eliminar los datos duplicados.

Esas tareas se llevan a cabo mediante la creación de una consulta de totales que use las funciones de agregado, como Cuenta, Suma y Promedio, para resumir los datos duplicados en una tabla.

 Nota   No se pueden modificar los valores de campo ni eliminar los registros cuando se ve una consulta de totales en la vista Hoja de datos. Para modificar o eliminar datos, abra la tabla subyacente en la vista Hoja de datos.

En los pasos descritos en esta sección, se usa la tabla Cuantía adeudada.

Nombre de compañía Nombre del contacto Dirección Ciudad Código postal Tel. Cuantía pagadera
Baldwin Museum of Science Leonor Bernabé Rodeo de la Cruz 477 Caracas 12345 (505) 555-2122 556,78 $
Blue Yonder Airlines David Santos Carlos Pellegrini 1263 San Cristóbal 23456 (104) 555-2123 1.893,24 $
Coho Winery Ezequiel Picó C/ Córcega 452 I. de Margarita 34567 (206) 555-2124 321,79 $
Contoso Pharmaceuticals José Andrés Dosil Av. Benavides 4858 Lima 45678 (171) 555-2125 457,68 £
Fourth Coffee Julián Precio Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2126 98,75 $
Coho Winery Cristina Portillo C/ Córcega 452-454 I. de Margarita 34567 (206) 555-2125 321,79 $
Humongous Insurance Esteban Puerto Cerrito 333 Buenos Aires 01234 (916) 555-2128 297,45 $
Trey Research María Barrera E. Zolá 1715 Barinas 43210 (503) 555-2129 509,09 $
Fourth Coffee Ana Trujillo 2222 Av. de la Constitución Ciudad de México 56789 (7) 555-2233 98,75 $

Si desea usar la tabla en una base de datos, vea los pasos descritos en Preparar datos de ejemplo, que aparece anteriormente en este artículo.

Crear una consulta de totales

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Mostrar tabla, haga doble clic en la tabla que desee usar en la consulta, o bien, haga clic en Agregar y, a continuación, haga clic en Cerrar para cerrar el cuadro de diálogo. Si usa los datos de ejemplo, agregue la tabla Cuantía adeudada a la consulta.
  2. Agregue los campos que contengan datos duplicados.

Si usa la tabla Cuantía adeudada, agregue los campos Nombre de compañía y Ciudad porque esos campos determinan la duplicación.

  1. Agregue el campo que especifique los criterios de selección. Si usa la tabla Cuantía adeudada, agregue el campo Cuantía pagadera.
  2. En la ficha Diseño, en el grupo Mostrar u ocultar, haga clic en TotalesImagen del botón. Aparece la fila Total en la cuadrícula de diseño y aparece Agrupar por en la fila para cada campo.
  3. Siga uno de estos procedimientos, dependiendo de los requisitos:
    • Para contar un número de registros, seleccione el campo que contenga los valores que desee contar y, a continuación, cambie el valor del campo en la fila Total a Cuenta. Si usa los datos de ejemplo, establezca el valor del campo Cuantía pagadera en Cuenta.
    • Para calcular un total, establezca el valor del campo en Suma.

 Nota   Una consulta de totales puede mostrar únicamente información de resumen. No se pueden mostrar los valores individuales.

  1. Haga clic en EjecutarImagen del botón para ejecutar la consulta y devolver los resultados en la vista Hoja de datos.

Principio de sección

Usar una consulta de eliminación para eliminar registros duplicados

Tras confirmar que una tabla contiene registros duplicados, se pueden eliminar los datos no deseados mediante la creación y la ejecución de una consulta de eliminación. Este proceso se compone normalmente de los siguientes pasos:

  • Planee la eliminación. Como parte de este proceso, determine si los datos que desee eliminar están relacionados con los datos de otra tabla. Si es el caso, deberá determinar si los datos residen en el lado "uno" de una relación uno a varios o en el lado "varios" de la relación. Si residen en el lado "uno", deberá habilitar una propiedad en la relación para poder eliminar los datos. Si residen en el lado "varios", podrá crear y ejecutar una consulta sin tener que emprender ninguna otra acción. Puede usar la herramienta Relaciones para examinar las relaciones en una base de datos. Para iniciar la herramienta Relaciones, en la ficha Herramientas de base de datos, en el grupo Mostrar u ocultar, haga clic en Relaciones.

Para obtener más información sobre cómo planear y ejecutar las consultas de eliminación, vea el artículo Usar una consulta de eliminación para eliminar uno o varios registros de una base de datos.

  • Cree una consulta, como una consulta de selección o una consulta de valores únicos, y agregue o cambie los criterios hasta que se devuelvan únicamente los datos que desee eliminar.
  • Convierta esa consulta en una consulta de eliminación y, a continuación, ejecútela para eliminar los datos no deseados.

 Importante   No se pueden deshacer los resultados de una consulta de eliminación. Por ese motivo, se recomienda crear una copia de seguridad de la base de datos antes de ejecutar una consulta de eliminación. Para obtener información sobre cómo crear una copia de seguridad de una base de datos, vea la sección Realizar una copia de seguridad de una base de datos, que aparece anteriormente en este artículo.

En los siguientes pasos se explica cómo crear una consulta de selección, convertirla en una consulta de eliminación y ejecutarla para eliminar registros.

Crear una consulta de selección

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

Se abre el diseñador de consultas y aparece el cuadro de diálogo Mostrar tabla.

  1. Seleccione la tabla en el lado "uno" de la relación, haga clic en Agregar y, a continuación, haga clic en Cerrar.

La tabla aparece como una ventana en la sección superior de la cuadrícula de diseño de la consulta. En la ventana se muestran todos los campos de la tabla. En esta ilustración se muestra una tabla típica en el diseñador de consultas.

Una tabla en el diseñador de consultas

  1. Haga doble clic en el asterisco (*) para agregar todos los campos de la tabla a la cuadrícula de diseño.

Si agrega todos los campos de tabla, la consulta de eliminación podrá eliminar registros completos (filas) de la tabla.

  1. De manera opcional, agregue una columna que permita especificar criterios.

Por ejemplo, supongamos que un cliente cierra su negocio y hay que eliminar todos los pedidos pendientes de ese cliente. Para buscar únicamente esos registros, se agregan los campos Id. de cliente y Fecha de pedido a la cuadrícula de diseño.

  1. Después del paso anterior, especifique los criterios en la fila Criterios de la cuadrícula de diseño.

Debe usar criterios para que se devuelvan únicamente los registros que desee eliminar. En caso contrario, la consulta de eliminación quita todos los registros de la tabla. Para continuar con el ejemplo del paso anterior, especifique el identificador del cliente que cerró su negocio así como la fecha en la que los pedidos de ese cliente dejaron de ser válidos.

Para obtener más información sobre el uso de criterios, vea el artículo Usar una consulta de eliminación para eliminar uno o varios registros de una base de datos.

  1. Después del paso anterior, desactive la casilla de verificación Mostrar de cada campo de criterio.
  2. En el grupo Resultados de la ficha Diseño, haga clic en Ejecutar.

Compruebe que la consulta devuelve los registros que desee eliminar.

  1. Mantenga abierta la consulta y, después, continúe con los siguientes pasos.

Convertir la consulta de selección en una consulta de eliminación y ejecutar la consulta para eliminar los datos

  1. Haga clic en Vista Diseño para cambiar de la hoja de datos al diseñador de consultas.
  2. En el grupo Tipo de consulta de la ficha Diseño, haga clic en Eliminar.

Access convierte la consulta de selección en una consulta de eliminación, oculta la fila Mostrar en la sección inferior de la cuadrícula de diseño y agrega la fila Eliminar.

Asegúrese de que en la fila Eliminar de la columna * (todos los campos) aparece De. La palabra Ubicación debe aparecer en todas las columnas de criterios.

  1. Asegúrese de que desea eliminar los datos y, a continuación, haga clic en EjecutarImagen del botón para ejecutar la consulta y ver los resultados en la vista Hoja de datos.

Access le pedirá que confirme la eliminación.

Haga clic en para eliminar los datos.

Ocultar el mensaje de confirmación

Siga estos pasos si no desea ver un mensaje de confirmación cada vez que ejecute una consulta de eliminación u otra consulta de acción.

  • Haga clic en el botón de Microsoft Office Imagen de botón y, a continuación, haga clic en Opciones de Access.

Aparece el cuadro de diálogo Opciones de Access.

  • Haga clic en Avanzadas y, en la sección Edición, bajo Confirmar, desactive la casilla de verificación Consultas de acción.
  • Haga clic en Aceptar para cerrar el cuadro de diálogoOpciones de Access.

Principio de sección

Impedir que los usuarios introduzcan valores duplicados

Puede impedir que los usuarios introduzcan datos duplicados aplicando varias reglas:

  • Configurar un campo de modo que contenga sólo valores únicos.    Para implementar esta regla, siga uno de estos procedimientos:
    • Designe el campo como clave principal. Esto se puede hacer sólo si la tabla aún no tiene una clave principal. Para configurar el campo como clave principal, abra la tabla en la vista Diseño, haga clic con el botón secundario en el nombre del campo y, a continuación, haga clic en Clave principalImagen del botón. Un campo de clave principal acepta sólo valores únicos y avisará a los usuarios si proporcionan un valor duplicado.
    • Si la tabla ya tiene una clave principal, establezca la propiedad Indizado del campo en Sí (Sin duplicados) en la vista Diseño de la tabla. Esta propiedad impide que el campo acepte el mismo valor para más de un registro. Recuerde que en algunos casos, como los campos que contienen información de nombre y ciudad, es preciso aceptar duplicados.
  • Especificar que una combinación de valores en dos o más campos debe ser única para cada registro.    Por ejemplo, supongamos que tienen una tabla con datos de contacto. Puede designar una combinación de campos, como Nombre del contacto, Dirección y Ciudad, como la clave principal de la tabla.

Ese enfoque funciona porque es muy poco probable que dos contactos con el mismo nombre también compartan la misma dirección y la misma ciudad.

Para crear una clave principal multicampo, siga estos pasos:

  1. Abra la tabla en la vista Diseño.
  2. Haga clic en el selector de fila situado a la izquierda del primer campo para seleccionar toda la fila.
  3. Mantenga presionada la tecla CTRL y haga clic en el selector de fila de los demás campos que desee incluir en la clave principal.
  4. Haga clic con el botón secundario y, a continuación, haga clic en Clave principal Imagen del botón en el menú contextual.

Mediante este paso, se establece la propiedad Indizado de cada campo de la clave principal en Sí (Con duplicados) de modo que, por ejemplo, se pueda especificar el mismo nombre, la misma dirección o la misma ciudad en varios registros. Sin embargo, no se puede especificar una combinación idéntica de nombre, dirección y ciudad en más de un registro. Por ejemplo, puede haber dos contactos con el nombre José Andrés Dosil que viven en Av. Benavides 4858 pero los dos no pueden vivir en Lima.

Principio de sección


Volver al principio Volver al principio

Buscar y editar, ocultar o eliminar los datos duplicados de varias tablas

En las siguientes secciones se explican algunas de las formas en que se pueden buscar y modificar, ocultar o eliminar los registros duplicados que existen en varias tablas. Normalmente, los datos de dos o más tablas se superponen cuando se intenta integrar una base de datos en otra.



Cuando hay duplicados en dos tablas, mostrarlos adyacentes uno a otro

A menudo, se termina teniendo dos tablas con datos duplicados o superpuestos en la misma base de datos. Por ejemplo, supongamos que tiene una tabla denominada Clientes y otra tabla denominada Compradores:

La tabla Clientes    

Nombre Dirección Ciudad Tel. Fax
Baldwin Museum of Science Rodeo de la Cruz 477 Caracas (505) 555-2122 (505) 555-3123
Blue Yonder Airlines Carlos Pellegrini 1263 San Cristóbal (104) 555-2123 (104) 555-2124
Coho Winery C/ Córcega 452 I. de Margarita (206) 555-2124 (206) 555-2125
Contoso Pharmaceuticals Av. Benavides 4858 Lima (171) 555-2125 (171) 555-2126
Fourth Coffee Av. de la Constitución 2222 Ciudad de México (7) 555-2126 (7) 555-2127
Consolidated Messenger C/ Córcega 452-454 I. de Margarita (206) 555-2125 (206) 555-2129
Graphic Design Institute Cerrito 333 Buenos Aires (916) 555-2128 (916) 555-2128
Litware, Inc. Carrera 22 con Ave. Carlos Soublette #8-35 Barinas (503) 555-2129 (503) 555-2110
Tailspin Toys Carrera 22 con Ave. Carlos Soublette #9-37 Barinas (503) 555-2233 (503) 555-2239

La tabla Compradores    

Nombre de compañía Nombre del contacto Dirección Ciudad Código postal Teléfono
Baldwin Museum of Science Leonor Bernabé Rodeo de la Cruz 477 Caracas 12345 (505) 555-2122
Blue Yonder Airlines David Santos Carlos Pellegrini 1263 San Cristóbal 23456 (104) 555-2123
Coho Winery Ezequiel Picó C/ Córcega 452 I. de Margarita 34567 (206) 555-2124
Contoso Pharmaceuticals José Andrés Dosil Av. Benavides 4858 Lima 45678 (171) 555-2125
Fourth Coffee Julián Precio Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2126
Adventure Works Cristina Portillo C/ Córcega 452-456 I. de Margarita 34567 (206) 555-2125
Humongous Insurance Esteban Puerto Cerrito 333 Buenos Aires 01234 (916) 555-2128
Trey Research María Barrera E. Zolá 1715 Barinas 43210 (503) 555-2129
Fabrikam, Inc. Antonio Moreno C/ Araquil, 67 I. de Margarita 56789 (206) 555-2233

Observe que en este caso, las tablas individuales no contienen valores duplicados, pero hay campos en ambas tablas que contienen datos superpuestos, como los datos del campo Nombre de la tabla Clientes y los datos del campo Nombre de compañía en la tabla Compradores.

No siempre se pueden integrar los datos de cada tabla combinando las dos tablas. Para algunos clientes, puede que la tabla Clientes contenga la información más reciente, pero puede que la tabla Compradores contenga datos más actualizados de otros usuarios. Normalmente, la mejor forma de actuar es revisar el contenido de ambas tablas y, después, decidir qué datos se van a mantener y cuáles se van a eliminar.

Para unir los registros de ambas tablas, se crea una consulta de unión. La consulta colocará los registros duplicados juntos de modo que sea más fácil revisarlos.

 Nota   No se pueden modificar ni eliminar los datos devueltos por una consulta de unión. Para modificar o eliminar datos, abra las tablas subyacentes en la vista Hoja de datos.

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

Access crea una nueva consulta. Aparece el cuadro de diálogo Mostrar tabla.

  1. Cierre el cuadro de diálogo Mostrar tabla sin agregar tablas ni consultas a la cuadrícula de diseño.
  2. Haga clic con el botón secundario del mouse en la ficha de documentos de la consulta y, a continuación, haga clic en Vista SQL.
  3. Si usó las tablas de ejemplo anteriormente mencionadas, pegue la siguiente instrucción SQL en la ventana. Si usa datos propios, use la siguiente instrucción como referencia. Use las cláusulas SELECT, UNION ALL SELECT y ORDER BY tal y como se muestra, pero reemplace los nombres de campo y de tabla con sus propios datos.

SELECT [Nombre de compañía], [Dirección], [Ciudad], [Teléfono], FROM [Compradores]
UNION ALL SELECT [Nombre], [Dirección], [Ciudad], [Tel.], FROM [Clientes]
ORDER BY [Nombre de compañía];

La primera instrucción SELECT recupera registros de la tabla Compradores y la segunda instrucción SELECT recupera registros de la tabla Clientes. La cláusula UNION ALL une todos los registros de ambas tablas. La instrucción ORDER BY ordena los registros de modo que los registros duplicados estén colocados juntos para que sean fáciles de revisar.

 Nota   Cada instrucción SELECT debe devolver el mismo número de campos y en el mismo orden. Los campos correspondientes deben tener tipos de datos compatibles, salvo una excepción: se puede usar un campo con el tipo de datos Número y un campo con el tipo de datos Texto como campos correspondientes. Además, recuerde que los nombres de campo pueden ser distintos.

  1. Haga clic en EjecutarImagen del botón para ejecutar la consulta y ver los resultados en la vista Hoja de datos.

Si usa los registros de las tablas arriba mencionadas, se mostrarán 18 registros: 9 registros de la tabla Clientes y 9 registros de la tabla Compradores. 

Guarde la consulta y, a continuación, cierre la vista. Va a usar esta consulta en la siguiente sección.

Principio de sección

Cuando hay duplicados en dos tablas, mostrar sólo un registro

A veces, puede que necesite ver sólo los registros distintos de dos tablas similares. Si un registro existe en ambas tablas, podrá incluir el registro de la primera tabla y omitir el registro correspondiente de la segunda tabla.

Access trata los registros de tablas distintas como duplicados únicamente si coinciden los valores de todos los campos seleccionados. Por ejemplo, si incluye los campos Nombre de compañía, Ciudad, Dirección, Tel. y Fax en la consulta, los valores de los cinco campos deben coincidir para que Access trate el registro como duplicado.

En esta sección se explica cómo modificar la consulta de la sección anterior para que se muestren todos los registros de la tabla Compradores y sólo los registros únicos de la tabla Clientes.

 Nota   No se pueden modificar los datos devueltos por una consulta de unión. Para modificar o eliminar datos, abra las tablas subyacentes en la vista Hoja de datos.

Modificar la consulta

  1. Abra la consulta creada en la sección anterior.
  2. En la ficha de documentos de la consulta, haga clic en Vista SQL para ver la instrucción SQL.
  3. Elimine los campos [Teléfono] y [Tel.] de ambas instrucciones SELECT.
  4. Elimine la palabra ALL detrás de la palabra UNION. De este modo, la consulta omite los registros duplicados de la tabla Clientes. La instrucción SQL quedará como se muestra a continuación.

SELECT [Nombre de compañía], [Dirección], [Ciudad], FROM [Compradores]
UNION SELECT [Nombre], [Dirección], [Ciudad], FROM [Clientes]
ORDER BY [Nombre de compañía];

  1. Haga clic en EjecutarImagen del botón para ejecutar la consulta y ver los resultados en la vista Hoja de datos.

Si usa los datos de ejemplo de la sección anterior, la consulta devolverá 14 en vez de 18 registros.

Principio de sección

Mostrar sólo los registros duplicados detectados en ambas tablas

Se usa una combinación interna cuando se necesita que la consulta devuelva sólo los valores coincidentes de dos tablas. Si no está familiarizado con Access, una combinación interna es una operación que vincula las filas de dos o más tablas sólo si coinciden los valores de los campos combinados.

Para crear una combinación interna, cree una consulta de selección que incluya ambas tablas y, a continuación, cree una relación entre los campos que contengan los valores duplicados. De forma predeterminada, Access crea una combinación interna cuando se crea la relación.

 Nota   No se pueden modificar los campos o filas devueltos por una consulta de selección con una combinación interna. Si desea modificar los datos, abra las tablas subyacentes y cambie los valores en cada tabla.

Crear una consulta que tenga una combinación interna

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Mostrar tabla, haga doble clic en la tabla Compradores y en la tabla Clientes y, a continuación, haga clic en Cerrar para cerrar el cuadro de diálogo.
  2. Identifique los campos que tengan valores coincidentes en los registros duplicados. Si usa las tablas de ejemplo, el campo Nombre de compañía de la tabla Compradores se corresponde con el campo Nombre de la tabla Clientes.
  3. Arrastre el campo Nombre de compañía de la primera tabla hasta el campo Nombre de la segunda tabla. Access conecta los campos con una línea.

Una línea entre las tablas Compradores y Clientes que indica que las dos tablas están relacionadas, basándose en los nombres de cliente

De forma predeterminada, la consulta crea una combinación interna entre las dos tablas. La combinación interna seleccionará sólo los registros en los que el campo Nombre de compañía coincida con el campo Nombre.

  1. Haga doble clic en el campo Nombre de compañía para agregarlo a la cuadrícula de diseño de la consulta. Este campo ayudará a identificar los registros en la vista Hoja de datos.
  2. Haga doble clic en los demás campos de las tablas Compradores y Clientes que desee agregar a la cuadrícula de diseño de la consulta. En este caso, agregue el campo Tel. de la tabla Compradores y el campo Teléfono de la tabla Clientes.
  3. Haga clic en EjecutarImagen del botón para ejecutar la consulta y ver los resultados en la vista Hoja de datos. La consulta devolverá cinco registros, uno por cada cliente con un registro en ambas tablas.
Nombre de compañía Teléfono (Compradores) Tel. (Clientes)
Baldwin Museum of Science (505) 555-2122 (505) 555-3123
Blue Yonder Airlines (104) 555-2123 (104) 555-2124
Coho Winery (206) 555-2124 (206) 555-2124
Contoso Pharmaceuticals (171) 555-2125 (171) 555-2125
Fourth Coffee (7) 555-2126 (7) 555-2126

Principio de sección

Ver sólo los registros de una tabla que no tengan un registro coincidente en otra tabla

Continuando con el escenario donde las tablas Compradores y Clientes tienen datos duplicados, ahora va ver lo que necesita hacer para ver los registros de la tabla Compradores sin registro duplicado en la tabla Clientes. Esto puede ayudarle a tomar decisiones de cara a determinados clientes, basándose únicamente en el contenido de la tabla Compradores, antes de consolidar las dos tablas.

Para ver sólo los registros de la tabla Compradores que no tengan registro duplicado en la tabla Clientes, cree una consulta de buscar no coincidentes. Si usa los datos de ejemplo, este tipo de consulta devuelve todos los registros de la tabla Compradores que no tengan un registro coincidente en la tabla Clientes.

 Nota   Se pueden modificar los valores de campo o eliminar registros cuando esta consulta está en la vista Hoja de datos.

Crear una consulta de buscar no coincidentes

  1. En el grupo Otros de la ficha Crear, haga clic en Asistente para consultas.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Nueva consulta, haga clic en Asistente para consultas de buscar no coincidentes y, a continuación, haga clic en Aceptar.
  2. Haga clic en la tabla Compradores, que contiene los registros en los que está interesado. Haga clic en Siguiente.
  3. Haga clic en la tabla Clientes. Es la tabla con la que va a comparar la tabla Compradores. Haga clic en Siguiente.
  4. Haga clic en el campo Nombre de compañía de la tabla Compradores, haga clic en el campo Nombre de la tabla Clientes y, a continuación, haga clic en el botón <=> para combinar las tablas basándose en los nombres de cliente. Haga clic en Siguiente.
  5. Seleccione los campos que desee mostrar en la vista. En este caso, agregue los campos Nombre de compañía, Dirección, Ciudad y Tel. Haga clic en Siguiente.
  6. Escriba un nombre para la consulta y haga clic en Finalizar para ver los registros en la vista Hoja de datos. Si usa las tablas de ejemplo, la consulta devolverá cuatro registros, es decir, los registros de la tabla Compradores sin registro coincidente en la tabla Clientes.
Nombre de compañía Dirección Ciudad Teléfono
Adventure Works C/ Córcega 452-456 I. de Margarita (206) 555-2125
Humongous Insurance Cerrito 333 Buenos Aires (916) 555-2128
Trey Research E. Zolá 1715 Barinas (503) 555-2129
Fabrikam, Inc. C/ Araquil, 67 I. de Margarita (206) 555-2233

Principio de sección

Eliminar los registros duplicados de una tabla y combinar los registros restantes en otra tabla

Tras revisar los datos duplicados de tablas similares, puede eliminar los registros duplicados y combinar los datos restantes en una sola tabla. El proceso se compone de los siguientes pasos:

  • De manera opcional, en la tabla que desee eliminar, actualice los datos que desee combinar. En este tema no se explica cómo actualizar los datos.

Para obtener información sobre cómo actualizar los datos, vea el artículo Actualizar los datos de una base de datos.

  • De manera opcional, revise las posibles relaciones entre la tabla que desee eliminar y otras tablas de la base de datos. Si existe una relación, normalmente se elimina y, a continuación, se establece una nueva relación con la otra tabla (la tabla que contiene los datos combinados). No obstante, hay que asegurarse de que los valores de clave principal en la nueva tabla coinciden con los valores de clave principal en las otras tablas.
  • Cree una consulta de eliminación que use la propiedad Valores únicos para buscar y eliminar los registros coincidentes. Asegúrese de no romper ninguna relación existente entre las tablas de la base de datos. Por ejemplo, supongamos que desea mover los registros únicos de la tabla Clientes a la tabla Compradores y, a continuación, eliminar la tabla Clientes. Si la tabla Clientes está relacionada con otras tablas de la base de datos, debe asegurarse de que la tabla Compradores asume esas relaciones. En este tema no se abordan las relaciones.

Para obtener más información, vea el artículo Crear, modificar o eliminar una relación.

  • Cree una consulta de datos anexados para agregar los registros restantes de la tabla que desee eliminar a la tabla que desee conservar. Puede que tenga que agregar el campo de clave principal y los valores de los datos anexados a la tabla que desee conservar.
  • Elimine la tabla que no desee.

En esta sección se explica cómo crear y usar una consulta de eliminación y una consulta de datos anexados, además de mostrar cómo eliminar una tabla. En los pasos se usan las tablas Compradores y Clientes.

La tabla Compradores    

Nombre de compañía Nombre del contacto Dirección Ciudad Código postal Teléfono
Baldwin Museum of Science Leonor Bernabé Rodeo de la Cruz 477 Caracas 12345 (505) 555-2122
Blue Yonder Airlines David Santos Carlos Pellegrini 1263 San Cristóbal 23456 (104) 555-2123
Coho Winery Ezequiel Picó C/ Córcega 452 I. de Margarita 34567 (206) 555-2124
Contoso Pharmaceuticals José Andrés Dosil Av. Benavides 4858 Lima 45678 (171) 555-2125
Fourth Coffee Julián Precio Av. de la Constitución 2222 Ciudad de México 56789 (7) 555-2126
Adventure Works Cristina Portillo C/ Córcega 452-456 I. de Margarita 34567 (206) 555-2125
Humongous Insurance Esteban Puerto Cerrito 333 Buenos Aires 01234 (916) 555-2128
Trey Research María Barrera E. Zolá 1715 Barinas 43210 (503) 555-2129
Fabrikam, Inc. Antonio Moreno C/ Araquil, 67 I. de Margarita 56789 (206) 555-2233

La tabla Clientes    

Nombre Dirección Ciudad Teléfono Fax
Baldwin Museum of Science Rodeo de la Cruz 477 Caracas (505) 555-2122 (505) 555-3123
Blue Yonder Airlines Carlos Pellegrini 1263 San Cristóbal (104) 555-2123 (104) 555-2124
Coho Winery C/ Córcega 452 I. de Margarita (206) 555-2124 (206) 555-2125
Contoso Pharmaceuticals Av. Benavides 4858 Lima (171) 555-2125 (171) 555-2126
Fourth Coffee Av. de la Constitución 2222 Ciudad de México (7) 555-2126 (7) 555-2127
Consolidated Messenger C/ Córcega 452-454 I. de Margarita (206) 555-0170 (206) 555-0171
Graphic Design Institute Cerrito 333 Buenos Aires (916) 555-2128 (916) 555-2128
Litware, Inc. Carrera 22 con Ave. Carlos Soublette #8-35 Barinas (503) 555-0192 (503) 555-0193
Tailspin Toys Carrera 22 con Ave. Carlos Soublette #9-37 Barinas (503) 555-2233 (503) 555-2239

Si desea usar estas tablas en una base de datos, vea los pasos descritos en Preparar datos de ejemplo, que aparece anteriormente en este artículo. Para este ejercicio, suponemos que la tabla Compradores contiene la información más reciente, por lo que desea eliminar los registros coincidentes de la tabla Clientes y, a continuación, combinar los registros restantes de la tabla Clientes en la tabla Compradores.

Eliminar datos no deseados

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Mostrar tabla, haga doble clic en la tabla Compradores y en la tabla Clientes y, a continuación, cierre el cuadro de diálogo.
  2. Combine las dos tablas arrastrando el campo Nombre de compañía de la tabla Compradores hasta el campo Nombre de la tabla Clientes.
  3. Haga clic con el botón secundario del mouse en el área vacía en la mitad superior de la ventana y, a continuación, haga clic en Propiedades. Establezca el valor de la propiedad Registros únicos en .

Al combinar las dos tablas y establecer la propiedad Registros únicos de la consulta en , evita el mensaje No se pudo eliminar nada en las tablas especificadas que, en caso contrario, aparecería al ejecutarse la consulta.

  1. En el grupo Tipo de consulta de la ficha Diseño, haga clic en Eliminar.
  1. Arrastre el asterisco (*) de la tabla Clientes hasta la fila Campo de la primera columna en la cuadrícula de diseño de la consulta.

El asterisco (*) en Lista de campos representa todos los campos de la tabla

Aparece Clientes en la fila Tabla y aparece De en la fila Eliminar. Esto significa que la consulta eliminará filas de la tabla Clientes.

  1. Ahora debe especificar los registros que la consulta va a eliminar. Si usa las tablas de ejemplo, elimine los registros en los que los valores de los campos Nombre, Dirección y Ciudad de la tabla Clientes coincidan con los campos correspondientes de la tabla Compradores.

Arrastre el campo Nombre de la tabla Clientes a la primera celda en blanco de la fila Campo en la cuadrícula de diseño de la consulta. Haga lo mismo para los campos Dirección y Ciudad de la tabla Clientes.

  1. Si usa las tablas de ejemplo, en la fila Criterios, para el campo Nombre, escriba [Compradores].[Nombre de compañía]. En la fila Criterios, para el campo Dirección, escriba [Compradores].[Dirección]. En la fila Criterios, para el campo Ciudad, escriba [Compradores].[Ciudad]. La cuadrícula de diseño de la consulta quedará de la siguiente manera:

Los campos y criterios que determinan los registros duplicados

Cuando ejecute la consulta, eliminará todos los registros que cumplan los criterios de la consulta, es decir, los que tengan valores coincidentes en los tres campos de cada tabla.

  1. Haga clic en VerImagen del botón para obtener una vista previa de los registros que se van a eliminar cuando ejecute la consulta. Verá los cinco registros duplicados de la tabla Clientes.
  2. Haga clic en EjecutarImagen del botón para ejecutar la consulta. Cuando se le pida que confirme la eliminación, haga clic en .
  3. Vaya a los siguientes pasos para crear una consulta de datos anexados.

Anexar los datos restantes

  1. En el grupo Otros de la ficha Crear, haga clic en Diseño de consulta.

Imagen de la Cinta de opciones de Access

  1. En el cuadro de diálogo Mostrar tabla, haga doble clic en la tabla de origen, haga doble clic en la tabla que contenga los registros que desee anexar y, a continuación, haga clic en Cerrar. Si usa los datos de ejemplo, haga doble clic en la tabla Clientes.
  2. En el grupo Tipo de consulta de la ficha Diseño, haga clic en Anexar.
  1. En el cuadro de diálogo Anexar, en la lista Nombre de la tabla, seleccione la tabla de destino (la tabla a la que va a anexar los datos). Si usa las tablas de ejemplo, seleccione la tabla Compradores y, a continuación, haga clic en Cerrar.
  2. Mueva los campos que desee anexar desde la tabla de origen hasta la fila Campo de la cuadrícula de diseño.

 Importante   Mueva sólo los campos que tengan un campo correspondiente en la tabla de destino.

Si usa los datos de ejemplo, mueva los campos Nombre, Dirección y Tel.

  1. Haga clic en la fila Anexar a de cada campo y seleccione el nombre del correspondiente campo en la tabla de destino. Si usa los datos de ejemplo, seleccione los campos Nombre de compañía, Dirección y Teléfono, respectivamente.
  2. Dado que va a agregar todos los registros de la tabla Clientes a la tabla Compradores, no es necesario especificar ningún criterio. Haga clic en VerImagen del botón para obtener una vista previa de los registros que se van a agregar a la tabla Compradores cuando se ejecute la consulta.
  3. Guarde y cierre la vista.
  4. Busque la consulta de datos anexados y haga doble clic en ella. Haga clic en para confirmar que desea anexar los datos.

MostrarNo deseo ver los mensajes de confirmación cuando ejecuto esta consulta

  • Haga clic en el botón de Microsoft Office Imagen de botón y, a continuación, haga clic en Opciones de Access.
  • En el cuadro de diálogo Opciones de Access, haga clic en Edición.
  • En la sección Edición general, bajo Confirmar, desactive la casilla de verificación Consultas de acción.

Eliminar la tabla

  1. Asegúrese de que dispone de los permisos necesarios para eliminar tablas de la base de datos, que la base de datos no es de sólo lectura y que ningún otro usuario tiene la tabla abierta.
  2. En el panel de exploración, haga clic en la tabla que desee eliminar.
  3. Presione SUPRIMIR y, a continuación, haga clic en para confirmar que desea eliminar la tabla.

 Nota   Al eliminar tablas de una base de datos, puede que se rompa parte o toda la funcionalidad de la misma. Por ese motivo, es preciso planear una eliminación para asegurar que la base de datos se mantiene funcional y es preciso crear una copia de seguridad de la base de datos antes de eliminar datos u otros componentes.

Para obtener más información sobre la eliminación de datos, vea el artículo Eliminar uno o varios registros de una base de datos.

Principio de sección

Ver sólo los registros diferentes al mostrar los datos de tablas relacionadas

Puede que una consulta que une los datos de dos tablas relacionadas muestre registros en los que todos los campos parecen coincidir. Sin embargo, si se examinan detenidamente las tablas, se comprueba que en realidad las tablas no contienen registros duplicados. Ese problema surge cuando la consulta no incluye determinados campos, como una clave principal, que identifiquen de manera única cada registro. En estos casos, no se eliminan los registros sino que se puede ocultar lo que parecen ser duplicados.

Por ejemplo, supongamos que usa una consulta para recopilar los datos referentes a los pedidos de los clientes incluidos en dos tablas y asegurar que los empleados cumplen los pedidos puntualmente. Los clientes pueden realizar un pedido de varios productos, por lo que cada producto se convierte en un registro independiente (una fila) en las tablas subyacentes. Dado que el pedido se realiza en un solo día y, a continuación, se envía en un solo día, los registros de un determinado pedido pueden contener un gran número de fechas duplicadas, tal y como se muestra a continuación:

Campos con valores únicos que se han quitado de la consulta

Dado que sabe que los pedidos llegan un día determinado y se envían un día determinado, necesita ver sólo un registro (una fila) por pedido. Para mostrar los registros únicos de las tablas que contienen los datos de los pedidos, puede establecer la propiedad Registros únicos de la consulta en . Cuando la propiedad está establecida en , la consulta examina todas las filas de las tablas y, en caso de detectar filas coincidentes (y no sólo campos), excluye todas esas filas duplicadas salvo una del conjunto de resultados.

Establecer la propiedad Registros únicos en Sí

  1. Con la consulta abierta en la vista Diseño, presione F4 para que se muestre la hoja de propiedades.
  2. En la hoja de propiedades, establezca la propiedad Registros únicos en y, a continuación, cierre la hoja de propiedades.

Mostrar la hoja de propiedades de la consulta

Cuando proceda, recuerde que, cuando el valor de la propiedad Registros únicos está establecido en , la consulta compara filas enteras y las filas de todas las tablas deben coincidir para que la consulta excluya datos. Además, se puede usar la propiedad Registros únicos sólo cuando una consulta incluye dos o más tablas.

Cuando cambie a la vista Hoja de datos, verá sólo un registro por pedido.

Un registro por pedido de la tabla Pedidos

Recuerde asimismo que, cuando se establece el valor de la propiedad Registros únicos en y se ejecuta la consulta, puede que se siga viendo lo que parecen ser registros duplicados. Para continuar con el anterior ejemplo, puede que siga viendo registros con fechas de pedido y de envío coincidentes, tal y como se muestra a continuación:

En la vista se siguen viendo registros duplicados

Esto sucede cuando se reciben dos pedidos diferentes el mismo día y, a continuación, se envían el mismo día. Si se establece el valor de la propiedad Registros únicos en , no se ocultan esos registros de los resultados de la consulta porque en realidad los registros no son duplicados en las tablas subyacentes.

Si desea ver sólo una instancia de esos registros (es decir, un registro de pedido por día), establezca el valor de la propiedad Valores únicos en . Cuando la propiedad Valores únicos está establecida , la consulta no examina las tablas subyacentes en busca de duplicados, sino que examina los valores de los campos incluidos y, si todos los campos coinciden en dos registros, la consulta oculta uno de los registros de la vista.

El valor de la propiedad Valores únicos se establece de la misma manera que se establece el valor de la propiedad Registros únicos: abra la hoja de propiedades de la consulta y cambie el valor de la propiedad a . En la hoja de propiedades, el cuadro de propiedad Valores únicos se encuentra encima del cuadro de propiedad Registros únicos.

La propiedad Valores únicos está establecida en Sí

Para continuar con el ejemplo anterior, ahora sólo verá las fechas en las que se recibieron o se enviaron uno o varios pedidos. No verá un registro por pedido.

Fechas de recepción y de envío de los pedidos

 Nota   Establecer el valor de la propiedad Registros únicos en afecta a las filas de las tablas que proporcionan los datos para la consulta, y establecer el valor de la propiedad Valores únicos en afecta únicamente a los campos de la consulta, por lo que no se pueden usar ambas propiedades a la vez. Si se establece el valor de una de ellas en , Access establece automáticamente el valor de la otra propiedad en No. Sin embargo, ambas pueden establecerse en No para que se devuelvan todos los registros.

En la siguiente tabla se ofrece un resumen para ayudarle a elegir un valor para las propiedades Registros únicos y Valores únicos en una consulta.

Si la consulta está basada en... Y desea ver... Establezca... Resultado...
Dos o más tablas, pero todos los campos de la consulta proceden de una sola tabla Los registros diferentes de la tabla (todos los campos de la tabla deben coincidir en dos registros para que puedan considerarse como duplicados) Registros únicos en . (Access establece automáticamente el valor de Valores únicos en No). Si la tabla contiene registros duplicados, la consulta omitirá los duplicados. No obstante, puede que los resultados de la consulta sigan incluyendo registros en los que coinciden todos los campos si la consulta no incluye un campo que identifique los registros de manera única.
Una o más tablas Los registros diferentes en la vista Hoja de datos de la consulta (todos los campos en la vista Hoja de datos deben coincidir en dos registros para que puedan considerarse como duplicados) Valores únicos en . (Access establece automáticamente el valor de Registros únicos en No). La consulta excluye los registros duplicados (donde coinciden todos los campos) en la vista Hoja de datos. No obstante, recuerde que puede que no se vean todos los registros diferentes de la tabla subyacente.
Una o más tablas Todos los registros Valores únicos en No y Registros únicos en No. Se ven todos los registros únicos y duplicados de ambas tablas.

Principio de sección

Ver un registro específico o resumir los datos duplicados en tablas relacionadas

Cuando aparecen datos duplicados en tablas relacionadas, puede que desee ver un registro específico del conjunto de duplicados, o bien, resumir los datos duplicados mediante Cuenta, Suma u otra función de agregado.

De manera similar a lo que sucede en el caso descrito en la sección anterior, puede que en realidad no haya datos duplicados en las tablas. Cuando ve los datos de dos tablas que comparten una relación uno a varios, como las tablas Pedidos y Detalles de pedidos, puede que haya varios registros con varios campos coincidentes. Por ejemplo, puede que un empleado haya recibido varios pedidos del mismo cliente, o bien, que ese empleado haya vendido el mismo producto como parte de diferentes pedidos el mismo día, etc. Si desea buscar datos para responder a consultas como las que siguen a continuación, necesitará resumir los datos en vez de eliminar los datos duplicados.

  • Buscar la cantidad total de cada producto vendido por cada empleado.
  • Contar el número total de pedidos que cada empleado tramitó para cada cliente.
  • Buscar el mayor pedido del día de cada empleado

Para resumir los datos, se usa una consulta de totales similar a las abordadas en la sección Mostrar registros distintos especificando el duplicado que aparece en los resultados, que aparece anteriormente en este artículo. En esa sección se explica cómo usar una consulta de totales con una sola tabla. Para crear una consulta de totales que contenga varias tablas, siga este procedimiento:

  • No olvide agregar la segunda tabla cuando agregue la primera tabla en el cuadro de diálogo Mostrar tabla.
  • Cuando agregue los campos que determinen la duplicación, arrastre los campos que desee de cualquiera de las dos tablas y, para todos los campos, establezca el valor en la fila Total de la columna en Agrupar por.
  • El campo que identifica el registro que desea ver o que tiene los valores que desea resumir puede proceder de cualquiera de las dos tablas.

Principio de sección


Volver al principio Volver al principio

 
 
Corresponde a:
Access 2007