Introducción a DISTINCT en Oracle

En este artículo, aprenderemos sobre DISTINCT en Oracle. Una de las palabras clave importantes que usamos cuando recuperamos nuestros valores de una o varias tablas en la base de datos es una palabra clave DISTINCT. Ahora pasemos a una palabra clave DISTINCT. Cuando decimos u oímos la palabra distinta en inglés, lo primero que nos viene a la mente es ÚNICO o separado de los demás. Lo mismo se aplica en el caso de la base de datos también. Puede haber cientos de registros en una tabla y de esos registros podemos tener registros duplicados. Esta palabra clave nos ayuda a recuperar solo registros únicos.

Sintaxis

Analizaremos ahora la sintaxis de la palabra clave distinta en Oracle. Tenemos dos opciones en este caso para la sintaxis. La primera sintaxis es usar palabras clave distintas sin condiciones y la segunda sintaxis es usar palabras clave distintas con condiciones.

Sintaxis sin condición: Select DISTINCT(expressions) from table_names;

Sintaxis con la condición: Select DISTINCT(expressions) from table_names (where conditions);

Parámetros

Ahora veremos los diversos parámetros utilizados en las dos sintaxis anteriores.

  • expresiones: proporcionamos los nombres de columna o expresiones que queremos ejecutar.
  • nombres_tabla: proporcionamos los nombres de tabla de los que queremos los registros. La información importante a tener en cuenta aquí es que debe haber al menos un nombre de tabla después de la cláusula.
  • (Condiciones where): es opcional si proporcionamos la condición where de la que recuperaremos los valores después de la ejecución de la consulta solo si se cumple la condición mencionada.

Nota: Una información importante a tener en cuenta es que la palabra clave DISTINCT considera el valor nulo también como un valor único. Entonces, si tenemos valores nulos en una columna y estamos usando la palabra clave DISTINCT para obtener valores únicos, también mostrará el valor NULL en la salida.

¿Cómo utilizar DISTINCT en Oracle?

Hasta ahora hemos discutido qué es una palabra clave DISTINCT en Oracle, la sintaxis de la palabra clave DISTINCT y los diversos parámetros utilizados en la sintaxis.

Ahora veremos varios ejemplos para aprender a usar DISTINCT de manera eficiente en Oracle. Antes de pasar a los ejemplos, usaremos la tabla EMPLOYEE ya creada en la base de datos. La tabla consta de cinco columnas que son NAME, VEHICLE_NAME, EMPLOYEE_ID, VEHICLE_ID y CITY. A continuación se muestra la captura de pantalla de los valores presentes en la tabla de empleados. La consulta que usaremos para esto es la instrucción básica SELECT

SELECT * from employee;

Al ejecutar en el desarrollador SQL obtenemos todos los valores como se muestra a continuación.

Salida: tabla de empleados

Ahora comencemos con los ejemplos.

1. Valores únicos en una columna sin condición

En este ejemplo, vamos a usar DISTINCT para encontrar los valores únicos en una columna particular de una tabla sin tener ninguna condición. Como ejemplo, vamos a encontrar los valores únicos presentes en la columna del vehículo de la tabla de empleados. La consulta se muestra a continuación:

Código:

select DISTINCT(vehicle_name) from employee;

Salida:

En la consulta anterior, como puede ver, hemos proporcionado el nombre de la columna y el nombre de la tabla. Al ejecutar la consulta anterior en el desarrollador de SQL, obtenemos el siguiente resultado.

2. Valores únicos en una columna con condición

En este ejemplo, vamos a encontrar valores únicos en una columna como en el ejemplo anterior pero con una ligera modificación. En esto, vamos a extraer los valores únicos basados ​​en alguna condición. Como ejemplo, obtengamos los valores únicos del nombre del vehículo de la columna de la tabla de empleados cuando la ciudad no es Kolkata. La consulta para el mismo se proporciona a continuación.

Código:

select DISTINCT(VEHICLE_NAME) from employee where CITY != 'KOLKATA';

Salida:

Si ve la consulta anterior, la consulta debería devolver los valores que satisfacen la condición where. Al ejecutar la consulta anterior en el desarrollador de SQL, obtenemos el siguiente resultado.

Como puede ver en el ejemplo anterior, teníamos seis valores únicos, mientras que en el segundo ejemplo tenemos cinco valores únicos, ya que habíamos agregado una condición específica en el segundo ejemplo.

3. Valores únicos de múltiples columnas

En este ejemplo, vamos a encontrar valores únicos en varias columnas utilizando DISTINCT. Entonces, en los ejemplos anteriores, habíamos usado columnas individuales, pero en este caso, vamos a usar columnas múltiples. Por ejemplo, supongamos que queremos encontrar los valores únicos tanto del nombre del vehículo como de la ciudad y los resultados deben estar en orden ascendente según la ciudad de la columna. Veamos la consulta para lo mismo a continuación.

Código:

select DISTINCT VEHICLE_NAME, CITY from employee ORDER BY CITY ASC;

Salida:

En la consulta anterior, primero, los datos se extraen en orden ascendente según la ciudad de la columna y luego se utilizan ambos valores en el nombre del vehículo y la ciudad de las columnas para obtener los pares únicos. Al ejecutar la consulta anterior en el desarrollador de SQL, obtenemos el siguiente resultado.

4. DISTINCT con valores NULL

Anteriormente en el artículo, discutimos que DISTINCT trata los valores NULL como valores únicos, por lo que si tenemos una columna con valores nulos. Será tratado como un valor único. Por ejemplo, tenemos valores nulos en la columna CIUDAD que puede ver en la captura de pantalla proporcionada al comienzo del artículo donde se muestran todos los valores de la tabla de empleados. Entonces, aplicaremos DISTINCT en la Column CITY para descubrir el impacto de los valores nulos en el resultado. La consulta para el mismo se muestra a continuación.

Código:

select DISTINCT CITY from employee;

Salida:

Al ejecutar la consulta anterior en el desarrollador de SQL, obtenemos el siguiente resultado.

Como podemos ver, la salida muestra nulo como un valor distinto. Esto muestra que DISTINCT trata nulo como un valor único.

Conclusión: DISTINCT en Oracle

En este artículo, discutimos la palabra clave DISTINCT en Oracle, las sintaxis utilizadas para usar DISTINCT en las consultas, los parámetros utilizados en esas sintaxis y luego, a través de varios ejemplos, descubrimos cómo podemos usar DISTINCT en Oracle para resolver nuestras tareas requeridas.

Artículos recomendados

Esta es una guía para DISTINCT en Oracle. Aquí discutimos la palabra clave DISTINCT en Oracle, las sintaxis utilizadas para usar DISTINCT en códigos y resultados. También puede consultar nuestros otros artículos relacionados para obtener más información:

  1. Se une a Oracle
  2. ¿Qué es la base de datos Oracle?
  3. Funciones de cadena de Oracle
  4. Oracle Warehouse Builder