Introducción a DISTINCT en Oracle

La palabra clave DISTINCT en la base de datos Oracle separa o filtra las filas duplicadas en el conjunto de resultados devuelto por la sentencia SELECT (el conjunto de resultados set contiene la columna/columnas presentes en la sentencia SELECT) para que la columna o columnas devueltas por la consulta contengan todos los valores o registros que no estén duplicados y sean únicos entre sí ya que la palabra clave DISTINCT compara cada valor de la columna/columnas presentes en el conjunto de resultados devueltos por la consulta entre sí.

Sintaxis

Inicia tu curso gratuito de Ciencia de Datos

Hadoop, Ciencia de Datos, Estadística & otros

Vamos a ver ahora la sintaxis de la palabra clave distinct en Oracle. En este caso tenemos dos opciones de sintaxis. La primera sintaxis es utilizar la palabra clave distinct sin condiciones y la segunda sintaxis es utilizar la palabra clave distinct con condiciones.

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

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

Parámetros

Ahora veremos los distintos parámetros que se utilizan en las dos sintaxis anteriores.

  • Expresiones: proporcionamos los nombres de las columnas o expresiones que queremos ejecutar.
  • Nombres_de_tabla: Proporcionamos los nombres de las tablas de las que queremos los registros. Información importante a tener en cuenta aquí es que debe haber al menos un nombre de tabla después de la cláusula.
  • : Es opcional Si proporcionamos la condición where entonces recuperaremos los valores después de la ejecución de la consulta sólo si la condición que se mencionó se satisface.

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. Por lo tanto, si tenemos valores nulos en una columna y estamos utilizando la palabra clave DISTINCT para obtener valores únicos, entonces también se mostrará el valor NULL en la salida.

¿Cómo utilizar DISTINCT en Oracle?

Ahora hemos visto qué es la palabra clave DISTINCT en Oracle, la sintaxis de la palabra clave DISTINCT y los distintos parámetros utilizados en la sintaxis.

Ahora veremos varios ejemplos para aprender a utilizar eficazmente DISTINCT en Oracle. Antes de pasar a los ejemplos, utilizaremos la tabla EMPLOYEE ya creada en la base de datos. La tabla consta de cinco columnas que son NOMBRE, NOMBRE_VEHÍCULO, ID_EMPLEADO, ID_VEHÍCULO y CIUDAD. A continuación se muestra la captura de pantalla de los valores presentes en la tabla de empleados. La consulta que vamos a utilizar para ello es la sentencia SELECT básica

SELECT * from employee;

Al ejecutarla en SQL developer 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 utilizar 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 de vehículos 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 se puede ver hemos proporcionado el nombre de la columna, así como el nombre de la tabla. Al ejecutar la consulta anterior en SQL developer obtenemos la siguiente salida.

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

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

Código:

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

Salida:

Si usted ve la consulta anterior la consulta debe devolver los valores que satisfacen la condición donde. Al ejecutar la consulta anterior en SQL developer obtenemos la siguiente salida.

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 añadido 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 múltiples columnas utilizando DISTINCT. Así que los ejemplos anteriores que habíamos utilizado columnas individuales, pero en este caso, vamos a utilizar múltiples columnas. 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 basados en la columna ciudad. 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 se extraen los datos en orden ascendente basados en la columna ciudad y luego se utilizan ambos valores de las columnas nombre del vehículo y ciudad para obtener los pares únicos. Al ejecutar la consulta anterior en SQL developer obtenemos la siguiente salida.

4. DISTINCT con valores NULL

Al principio del artículo, habíamos comentado que DISTINCT trata los valores NULL como valores únicos por lo que si tenemos una columna con valores nulos en ella. Se tratará como un valor único. Por ejemplo, tenemos valores nulos en la columna CIUDAD que puedes ver en la captura de pantalla proporcionada al principio del artículo donde se muestran todos los valores de la tabla de empleados. Por lo tanto, aplicaremos DISTINCT en la columna CIUDAD para averiguar 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 SQL developer obtenemos la siguiente salida.

Como podemos ver la salida muestra null como un valor distinto. Así que esto muestra que DISTINCT trata a null como un valor único.

Conclusión – DISTINCT en Oracle

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

Artículos recomendados

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

  1. Joins en Oracle
  2. Qué es Oracle Database
  3. Funciones de cadena de Oracle
  4. Oracle Warehouse Builder
  5. Guía de las principales versiones de Oracle
  6. ORDER BY en MySQL | ¿Cómo funciona?
  7. Guía de esta palabra clave en C#
1 Acciones

admin

Deja una respuesta

Tu dirección de correo electrónico no será publicada.

lg