OMISIÓN DE REGISTROS DUPLICADOS

En una consulta podría ser útil omitir registros que estén duplicados. Por ejemplo, en nuestros pedidos hay duplicación, puesto que un cliente realiza varios pedidos en el mismo día. Quizá necesitemos una historia para conocer los días y los clientes que realizaron algún pedido, pero no necesitaremos toda la lista, si no que nos diga, únicamente, mediante una línea, qué cliente realizó algún pedido y en qué día. Para ello, utilizaremos el predicado DISTINCT, cuya sintaxis es la siguiente:

 

SELECT DISTINCT lista_campos ...

 

El predicado DISTINCT omite aquellos registros duplicados en los campos especificados. En el problema expuesto, utilizaremos la siguiente sentencia:

 

SELECT DISTINCT [codigo cliente],fecha FROM pedidos;

 

Si deseamos que la consulta sea más completa y nos visualice también el nombre y los apellidos correspondientes del cliente en cuestión (estos datos están en la tabla 'clientes' y no en 'pedidos'), escribiríamos este mandato:

 

SELECT DISTINCT pedidos.fecha, pedidos.[codigo cliente], clientes.nombre, clientes.apellidos FROM pedidos, clientes WHERE clientes.[codigo cliente] = pedidos.[codigo cliente];