SQL | Cláusula OFFSET-FETCH

Las cláusulas OFFSET y FETCH se utilizan junto con las cláusulas SELECT y ORDER BY para proporcionar un medio para recuperar un rango de registros.

COMPENSAR

El argumento OFFSET se usa para identificar el punto de partida para devolver filas de un conjunto de resultados. Básicamente, excluye el primer conjunto de registros.
Nota:

  • OFFSET solo se puede usar con la cláusula ORDER BY. No se puede usar solo.
  • El valor de OFFSET debe ser mayor o igual a cero. No puede ser negativo, de lo contrario devolverá error.

Sintaxis:

SELECT column_name(s)
FROM table_name
WHERE condition
ORDER BY column_name
OFFSET rows_to_skip ROWS;

Ejemplos:
considere la siguiente tabla de empleados,

  • Escriba Fname, Lname de todos los Empleados excepto el empleado que tiene el salario más bajo.
    SELECT Fname, Lname
    FROM Employee
    ORDER BY Salary
    OFFSET 1 ROWS;

    Producción:

BUSCAR

El argumento FETCH se usa para devolver un conjunto de número de filas. FETCH no se puede usar solo, se usa junto con OFFSET.
Sintaxis:

SELECT column_name(s)
FROM table_name
ORDER BY column_name
OFFSET rows_to_skip
FETCH NEXT number_of_rows ROWS ONLY;

Ejemplo:

  • Imprima el Fname, Lname de la tupla 3 a la 6 de la tabla de empleados cuando se ordene de acuerdo con el salario.
    SELECT Fname, Lname
    FROM Employee
    ORDER BY Salary
    OFFSET 2 ROWS
    FETCH NEXT 4 ROWS ONLY;

    Producción:

  • Imprime las 2 tuplas inferiores de la tabla Empleado cuando se ordena por Salario.
    SELECT Fname, Lname
    FROM Employee
    ORDER BY Salary
    OFFSET (SELECT COUNT(*) FROM EMPLOYEE) - 2 ROWS
    FETCH NEXT 2 ROWS;

    Producción:

Puntos importantes:

  1. La cláusula OFFSET es obligatoria con FETCH. Nunca puede usar, ORDENAR POR… FETCH.
  2. TOP no se puede combinar con OFFSET y FETCH.
  3. La expresión de recuento de filas OFFSET/FETCH solo puede ser cualquier expresión aritmética, constante o de parámetro que devuelva un valor entero.
  4. ORDER BY es obligatorio para ser utilizado con la cláusula OFFSET y FETCH.
  5. El valor de OFFSET debe ser mayor o igual a cero. No puede ser negativo, de lo contrario devolverá error.

Este artículo es una contribución de Anuj Chauhan . Si le gusta GeeksforGeeks y le gustaría contribuir, también puede escribir un artículo usando contribuya.geeksforgeeks.org o envíe su artículo por correo a contribuya@geeksforgeeks.org. Vea su artículo que aparece en la página principal de GeeksforGeeks y ayude a otros Geeks.

Escriba comentarios si encuentra algo incorrecto o si desea compartir más información sobre el tema tratado anteriormente.

Publicación traducida automáticamente

Artículo escrito por GeeksforGeeks-1 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *