Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
Oracle/PLSQL: función de conteo
Este tutorial de Oracle explica cómo usar Oracle/PLSQL función de conteo Con sintaxis y ejemplos.
describir
La función Oracle/PLSQL COUNT devuelve el recuento de una expresión.
sintaxis
La sintaxis de la función COUNT en Oracle/PLSQL es:
SELECT COUNT(aggregate_expression) FROM tables [WHERE conditions];
O la sintaxis de la función CONTAR al agrupar resultados por una o más columnas es:
SELECT expression1, expression2, ... expression_n, COUNT(aggregate_expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
parámetro o parámetro
expresión1, expresión2, … expresión_n Expresiones no encapsuladas en la función COUNT y deben incluirse en la cláusula GROUP BY al final de la instrucción SQL. added_expression Esta es la columna o expresión cuyos valores no nulos se calcularán. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Estas son las condiciones que se deben cumplir para seleccionar registros.
devolver los bienes
La función CONTAR devuelve un número.
Incluir solo valores NOT NULL
No todos se dan cuenta de esto, pero la función CONTAR solo incluirá registros en el conteo donde el valor de la expresión en CONTAR (expresión) no sea nulo. Cuando la expresión contiene un valor NULL, no se incluye en el cálculo COUNT.
Veamos un ejemplo de la función CONTAR que demuestra cómo la función CONTAR evalúa valores NULL.
Por ejemplo, si tienes la siguiente tabla llamada proveedores:
Identificación del proveedor | Nombre del proveedor | Expresar |
---|---|---|
1 | IBM | California |
2 | microsoft | |
3 | nvidia |
Si ejecuta la siguiente declaración SELECT usando la función COUNT:
SELECT COUNT(supplier_id) FROM suppliers; Result: 3
Este ejemplo de COUNT devolverá 3 porque ninguno de los valores de ID de proveedor en el conjunto de resultados de la consulta es NULO.
Sin embargo, si ejecuta la siguiente declaración SELECT que usa la función COUNT:
SELECT COUNT(state) FROM suppliers; Result: 1
Este ejemplo de COUNT solo devolverá 1 porque solo hay un valor de estado en el conjunto de resultados de la consulta que no es NULL. Esa sería la primera línea con state=”CA”. Es la única fila incluida en el cálculo de la función CONTAR.
aplicar para
La función COUNT se puede utilizar en las siguientes versiones de Oracle/PLSQL:
- Oráculo 12c, Oráculo 11g, Oráculo 10g, Oráculo 9i, Oráculo 8i
Ejemplo: usar un solo campo
Veamos algunos ejemplos de la función COUNT de Oracle y exploremos cómo usar la función COUNT en Oracle/PLSQL.
Por ejemplo, es posible que desee saber cuántos empleados ganan más de $75 000 al año.
SELECT COUNT(*) AS "Number of employees" FROM employees WHERE salary > 75000;
En este ejemplo de la función COUNT, usamos el alias COUNT
Expresado como “número de empleados”. Entonces, cuando se devuelva el conjunto de resultados, se mostrará “Número de empleados” como el nombre del campo.
Ejemplo: uso de DISTINCT
SELECT COUNT(DISTINCT department) AS "Unique departments" FROM employees WHERE salary > 55000;
Puede usar la cláusula DISTINCT en la función COUNT. Por ejemplo, la siguiente instrucción SQL devuelve la cantidad de departamentos únicos donde al menos un empleado gana más de $55,000 al año.
Del mismo modo, el campo COUNT(DISTINCT departamento) tiene un alias como “Unique Department”. Este es el nombre de campo que aparecerá en el conjunto de resultados.
Ejemplo: uso de GROUP BY
En algunos casos, debe usar la cláusula GROUP BY con la función COUNT.
SELECT department, COUNT(*) AS "Number of employees" FROM employees WHERE state="CA" GROUP BY department;
Por ejemplo, también puede usar la función COUNT para devolver el nombre del departamento y la cantidad de empleados en el estado “CA” (en el departamento correspondiente).
Debido a que enumeró una columna en la declaración SELECT que no estaba encapsulada en la función COUNT, debe usar la cláusula GROUP BY. Por lo tanto, el campo de departamento debe aparecer en la sección GROUP BY.