Ya hemos aprendido a contar los elementos de una consulta con SQL. Ahora vamos a ver cómo contar elementos distintos. Pero, qué significa elementos distintos….
Volvamos a nuestra tabla:
Libros |
ISBN |
Titulo |
Autor |
Editorial |
Fecha Publicación |
Si realizamos una consulta SQL para contar elementos de la siguiente forma:
SELECT count(*) FROM libros
Esta nos devolverá todas las entradas que tenga la tabla libros. Es decir, todos los libros de todos los autores. De esta forma, ante una lista de resultados de la siguiente índole…
978-1-4493-0814-8 What Is HTML5? Brett McLaughlin 970-26-0518-0 Cómo Programar en Java Paul Deitel 978-84-415-2348-7 Java SE 6 F. Javier Moldes 978-1-4493-1439-2 What's New in Java 7? Madhusudhan Konda 978-1-4493-1608-2 Just Spring Madhusudhan Konda 978-1-4493-2838-2 Just Spring Data Access Madhusudhan Konda
… obtendremos que hay 6 libros al utilizar el count(*)
Contar elementos distintos en SQL sería para cubrir consultas del estilo… «Contar todas las editoriales distintas de las que tenemos libros» o «Contar todos los autores distintos de los que tenemos libros».
Para ello deberemos de aplicar la función count de SQL sobre los campos editorial o autor, pero con una salvedad y es que utilizaremos el modificador distinct. Mediante esta sentencia distinct estaremos contando aquellos elementos que sean distintos.
La sentencia SQL será:
SELECT count(distinct campo) FROM tabla
Así, para sacar los autores distintos, ejecutaremos la siguiente sentencia SQL:
SELECT count(distinct autor) FROM libros
Siendo el resultado igual a 4 ya que solo hay libros de 4 autores diferentes.