SELECT* /* Comment */
FROM platzi.alumnos
FETCH FIRST 1 ROWS ONLY; /*Es similar a limit, se utiliza en el estándar ANSI de SQL */
LIMIT 1; /* Otra forma de hacerlo */
/* Algo más complejo utilizando WINDOW FUNCTIONS*/
/* Es la relación que existe entre el row que queremos medir y la totalidad de rows en un grupo */
/* Si no se especifica nada, es toda la tabla */
SELECT*
FROM(
SELECT ROW_NUMBER() OVER() AS row_id, *
FROM platzi.alumnos
) AS alumnos_with_row_num /* Nombre del subFrom */
WHERE row_id = 10/2;
/* ROW_NUMBER() Es la WINDOW FUNCTION, trae cuál es el n de registro independientemente del criterio */
/* OVER() Indica que es de toda la tabla*/
/* AS row_id, * se le asigna un ALIAS (row_id) y trae todos los demás campos. */
RETO:
Traer las primeras 5 filas.
SELECT *
FROM platzi.alumnos AS alumnos
FETCH FIRST 5 ROWS ONLY; /* Es ANSI */
SELECT *
FROM platzi.alumnos
LIMIT 5; /* NO es ANSI */
SELECT *
FROM (
SELECT ROW_NUMBER () OVER() AS row_id, *
FROM platzi.alumnos
)AS alumnos_with_row_nums
WHERE row_id < 6
;
SELECT *
FROM (
SELECT ROW_NUMBER () OVER() AS row_id, *
FROM platzi.alumnos
)AS alumnos_with_row_nums
WHERE row_id <=5
;
SELECT *
FROM (
SELECT ROW_NUMBER () OVER() AS row_id, *
FROM platzi.alumnos
)AS alumnos_with_row_nums
WHERE row_id BETWEEN 1 and 5