No tienes acceso a esta clase

¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera

Curso Práctico de SQL

Curso Práctico de SQL

Israel Vázquez Morales

Israel Vázquez Morales

En mis tiempos

13/29
Recursos

Aportes 396

Preguntas 12

Ordenar por:

¿Quieres ver más aportes, preguntas y respuestas de la comunidad?

Mi solución

-- Extract
SELECT 	EXTRACT(YEAR FROM fecha_incorporacion) AS anio_incorporacion,
		EXTRACT(MONTH FROM fecha_incorporacion) AS mes_incorporacion,
		EXTRACT(DAY FROM fecha_incorporacion) AS dia_incorporacion,
		EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion,
		EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion,
		EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos
;
-- Date Part
SELECT DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion,
		DATE_PART('MONTH', fecha_incorporacion) AS mes_incorporacion,
		DATE_PART('DAY', fecha_incorporacion) AS dia_incorporacion,
		DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
		DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion,
		DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos
;

En mysql se puede extraer directamente el año utilizando “YEAR(campo_fecha)” que es a lo que normalmente estamos mas acostumbrados los que programamos.

QUE GRANDE QUE SOS ISRAELLLLLLL

Me propuse un reto de contar el número de estudiantes que se registran en cada fecha que existe en la columna de fecha_incorporacion este fue el resultado + el query lo realizé usando funciones ventana:

-- Hora minuto y segundo extraido de la fecha incorporación
SELECT
       HOUR(fecha_incorporacion) hora,
       MINUTE(fecha_incorporacion) minutos,
       SECOND(fecha_incorporacion) segundos 
       from alumnos;

Para SQL Server:


-- METODO 3
-- MOSTRAR FECHAS CON DATEPART
USE [platzi]
SELECT
	DATEPART(YYYY,fecha_incorporacion) AS anio_incorporacion,
	DATEPART(MM,fecha_incorporacion) AS num_mes,
	DATEPART(DD,fecha_incorporacion) AS num_dia,
	DATEPART(HH,fecha_incorporacion) AS hora_1,
	DATEPART([hour], fecha_incorporacion) AS hora_2,
	DATEPART(MI,fecha_incorporacion) AS minuto,
	DATEPART(SS,fecha_incorporacion) AS segundo
FROM platzi.alumnos
GO


-- METODO 4
-- MOSTRAR FECHAS CON CONVERT
USE [platzi]
SELECT
	YEAR(fecha_incorporacion) AS anio_incorporacion,
	MONTH(fecha_incorporacion) AS num_mes,
	DAY(fecha_incorporacion) AS num_dia,
	CONVERT(char(8),fecha_incorporacion,108) AS tiempo,
	CONVERT(CHAR(10),fecha_incorporacion,103) AS formato_fecha
FROM platzi.alumnos
GO


-- METODO 5
-- MOSTRAR FECHAS CON NOMBRES
USE [platzi]
SELECT
	YEAR(fecha_incorporacion) AS anio_incorporacion,
	DATENAME(MONTH,fecha_incorporacion) AS nombre_mes,
	DATENAME(WEEKDAY,fecha_incorporacion) AS nombre_dia
FROM platzi.alumnos
GO


Lo realize de esta manera ya que el date_part no funciona en mysql workbench😆

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hour_incorporacion,
	EXTRACT(MINUTE FROM fecha_incorporacion) AS minute_incorporacion,
    EXTRACT(SECOND FROM fecha_incorporacion) AS second_incorporacion
FROM platzi.alumnos; 

Me parecio muy largo la sentencia, intente unirlas pero marca error.

Aporte:

Mas alla del reto un dato curioso es que ademas de meses podes agrupar por semestres, TRIMESTRES y otras medias. Facilitando muchisimo ciertos análisis de negocio.

select extract (quarter from fecha_incorporacion),*
from universidad.alumnos;

select DATE_PART('quarter', fecha_incorporacion), * 
from universidad.alumnos; 

Comparto las soluciones

SELECT *
FROM platzi.alumnos
WHERE id IN (
	SELECT id
	FROM platzi.alumnos
	WHERE tutor_id <> 30
)

o también

SELECT *
FROM platzi.alumnos
WHERE id not IN (
	SELECT id
	FROM platzi.alumnos
	WHERE tutor_id = 30
)

Saludos

En SQL SEVER 2019

SELECT
YEAR(fecha_incorporacion) AS AÑO,
MONTH(fecha_incorporacion) as MES,
DAY(fecha_incorporacion) AS DIA
FROM ALUMNOS

2020 5 17
2018 9 1
2020 7 18
2018 2 5
2020 8 4
2019 6 5
2020 8 31
2020 8 17
2020 4 8
2019 3 28
2019 5 31

Mi solución.

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion,
	EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion,
	EXTRACT(SECOND FROM fecha_incorporacion) AS segundos_incorporacion
FROM platzi.alumnos;

SELECT DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
	DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion,
	DATE_PART('SECOND', fecha_incorporacion) AS segundos_incorporacion
FROM platzi.alumnos;

13. En mis tiempos

SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS anio_incorporacion
FROM platzi.alumnos;

SELECT DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion
FROM platzi.alumnos

SELECT DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion,
		DATE_PART('MONTH', fecha_incorporacion) AS mes_incorporacion,
		DATE_PART('DAY', fecha_incorporacion) AS dia_incorporacion
FROM platzi.alumnos

-- RETO

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora,
       EXTRACT(MINUTE FROM fecha_incorporacion) AS minutos,
       EXTRACT(SECOND FROM fecha_incorporacion) AS segundos
FROM platzi.alumnos;

Unpopular o popular opinion? Me gusta más la versión anterior de platzi 😄

Comparto varias maneras de decorar la salida con formatos de fecha:

SELECT fecha_incorporacion, EXTRACT(YEAR FROM  fecha_incorporacion) AS "AÑO", 
	TO_CHAR(fecha_incorporacion, 'Month dd, YYYY') as "Date1",
	TO_CHAR(fecha_incorporacion, 'fmMonth dd, YYYY') as "Date2",
	TO_CHAR(fecha_incorporacion, 'fmMonth ddth, YYYY') as "Date3",
	TO_CHAR(fecha_incorporacion, 'fmDay ddth Mon, YYYY') as "Date4"
FROM platzi.alumnos;

Tal que tendria este formato:
fecha_incorporacion: “2020-05-17 22:49:29”
AÑO: 2020
Date1: “May 17, 2020”
Date2: “May 17, 2020”
Date3: “May 17th, 2020”
Date 4: “Sunday 17th May, 2020”

con DATE PART

SELECT DATE_PART ('YEAR', fecha_incorporacion)AS anio_incorporacion,
DATE_PART ('MONTH', fecha_incorporacion)AS mes_incorporacion,
DATE_PART ('DAY', fecha_incorporacion)AS dia_incorporacion,
DATE_PART ('HOUR', fecha_incorporacion)AS hora_incorporacion,
DATE_PART ('MINUTE', fecha_incorporacion)AS minuto_incorporacion,
DATE_PART ('SECOND', fecha_incorporacion)AS segundo_incorporacion
FROM platzi.alumnos
Mi solución ```python SELECT * FROM platzi.alumnos WHERE id IN( SELECT id FROM platzi.alumnos WHERE tutor_id != 30 ); ```SELECT \* FROM platzi.alumnos WHERE id IN( SELECT id FROM platzi.alumnos WHERE tutor\_id != 30 );

EXTRACT() : numeric
DATE_PART(): double precision

Solucion mas facil que el NOT IN
Es;
!=

… Y si necesitas el año pero con la estructura de fecha pueden usar:

select date_trunc('year', fecha_incorporacion)::date AS anio,
	   date_trunc('month',fecha_incorporacion )::date AS mes,
	   date_trunc('day',fecha_incorporacion )::date as dia
from platzi.alumnos
order by 1 ASC, 2 DESC

Realmente feliz y motivado con esta clase, parte de lo básico y realiza consultas que se pueden seguir, además, para la tarea o reto no se necesitan otro tipo de funciones sino las que se explicaron en teoría y en la misma clase. Considero que este tipo de ejercicios si son muy productivos para este nivel. Gracias team platzi

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_inicio,
		EXTRACT(MIN FROM fecha_incorporacion) AS min_inicio,
		EXTRACT(SECOND FROM fecha_incorporacion) AS seg_inicio
FROM platzi.alumnos;

Y la solución de tipo II

SELECT DATE_PART ('HOUR',fecha_incorporacion) AS hora_inicio, 
		DATE_PART ('MIN',fecha_incorporacion) AS min_inicio, 
		DATE_PART ('SECOND',fecha_incorporacion) AS seg_inicio 
FROM platzi.alumnos;

Con la funcion EXTRACT() realice el ejercicio de tomar la hora, minuto y segundo de la fecha_incorporacion:

Otra forma de extraerlo:

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion,
		EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion,
		EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos;

SELECT DATE_PART ('YEAR', fecha_incorporacion) AS anio_ingreso,
		DATE_PART ('MONTH', fecha_incorporacion) AS mes_ingreso,
		DATE_PART ('DAY', fecha_incorporacion) AS día_ingreso,
		DATE_PART ('HOUR', fecha_incorporacion) AS hora_ingreso,
		DATE_PART ('MINUTE', fecha_incorporacion) AS minuto_ingreso,
		DATE_PART ('SECOND', fecha_incorporacion) AS segundo_ingreso

FROM platzi.alumnos;

Solución al reto.

SELECT DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
	DATE_PART('MINUTE', fecha_incorporacion) AS minutes_incorporacion,
	DATE_PART('SECOND', fecha_incorporacion) AS seconds_incorporacion
FROM platzi.alumnos; 

Mis respuestas

SELECT 	DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
		DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion,
		DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos;


SELECT	EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion,
		EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion,
		EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos

Mi Solución: ```js select extract(hour from fecha_incorporacion) as Hora, extract(minute from fecha_incorporacion) as minutos, extract(second from fecha_incorporacion) as segundos from platzi.alumnos; ```
Obtener el año y agruparlos ```java select extract (year from fecha_incorporacion) as anio_incorporacion from alumnos a group by anio_incorporacion ```
```js SELECT DATE_PART('YEAR' , fecha_incorporacion) AS year_incorporation, DATE_PART('MONTH' , fecha_incorporacion) AS month_incorporation, DATE_PART('DAY' , fecha_incorporacion) AS day_incorporation, DATE_PART('HOUR' , fecha_incorporacion) AS hour_incorporation, DATE_PART('MINUTE' , fecha_incorporacion) AS minute_incorporation, DATE_PART('SECOND' , fecha_incorporacion) AS second_incorporation, * FROM alumnos; SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS year_incorporation, EXTRACT(MONTH FROM fecha_incorporacion) AS month_incorporation, EXTRACT(DAY FROM fecha_incorporacion) AS day_incorporation, EXTRACT(HOUR FROM fecha_incorporacion) AS hour_incorporation, EXTRACT(MINUTE FROM fecha_incorporacion) AS minute_incorporation, EXTRACT(SECOND FROM fecha_incorporacion) AS second_incorporation FROM alumnos; ```Tambien funciona datos como minute o minutes
Mi solución en MYSQL select year(fecha\_incorporacion) as anio\_incorporacion, month(fecha\_incorporacion) as mes\_incorporacion, day(fecha\_incorporacion) as dia\_incorporacion, hour(fecha\_incorporacion) as hora\_incorporacion, minute(fecha\_incorporacion) as minuto\_incorporacion, second(fecha\_incorporacion) as segundo\_incorporacion FROM platzi\_sql\_practice.alumnos;
```tsx --EXTRACT: SELECT EXTRACT (HOUR FROM fecha_incorporacion) AS "Hora", EXTRACT (MINUTE FROM fecha_incorporacion) AS "Minutos", EXTRACT (SECOND FROM fecha_incorporacion) AS "Segundos" FROM platzi.alumnos; --DATE_PART SELECT DATE_PART ('HOUR', fecha_incorporacion) AS "Hora", DATE_PART ('MINUTE', fecha_incorporacion) AS "Minutos", DATE_PART ('SECOND', fecha_incorporacion) AS "Segundos" FROM platzi.alumnos; ```
```jsx --EXTRACT: SELECT EXTRACT (HOUR FROM fecha_incorporacion) AS "Hora", EXTRACT (MINUTE FROM fecha_incorporacion) AS "Minutos", EXTRACT (SECOND FROM fecha_incorporacion) AS "Segundos" FROM platzi.alumnos; --DATE_PART SELECT DATE_PART ('HOUR', fecha_incorporacion) AS "Hora", DATE_PART ('MINUTE', fecha_incorporacion) AS "Minutos", DATE_PART ('SECOND', fecha_incorporacion) AS "Segundos" FROM platzi.alumnos; ```--EXTRACT: SELECT EXTRACT (HOUR FROM fecha\_incorporacion) AS "Hora", EXTRACT (MINUTE FROM fecha\_incorporacion) AS "Minutos", EXTRACT (SECOND FROM fecha\_incorporacion) AS "Segundos" FROM platzi.alumnos; \--DATE\_PART SELECT DATE\_PART ('HOUR', fecha\_incorporacion) AS "Hora", DATE\_PART ('MINUTE', fecha\_incorporacion) AS "Minutos", DATE\_PART ('SECOND', fecha\_incorporacion) AS "Segundos" FROM platzi.alumnos;
Para este ejercicio, efectivamente podemos extraer la hora usando `EXTRACT` o `DATE_PART` con los subcampos `HOUR`, `MINUTE`, `SECOND` y de esa manera los extrae por aparte en cada columna. Pero si te preguntas como podrías extraer la hora completa **HH:MM:SS**, hay varias formas que te muestro en mi solución, sin embargo, ten en cuenta que cualquiera de esas formas el resultado se genera de tipo texto: ![](https://static.platzi.com/media/user_upload/enmistiempos-b7b21744-db73-4e75-9d7f-e5fa8d3d10d3.jpg)
Diferentes forma la mas sencilla: ![](https://static.platzi.com/media/user_upload/image-4245d0d2-b312-4c9d-b372-23260ee0078d.jpg)
SELECT EXTRACT(YEAR FROM fecha\_incorporacion) AS year\_incorporacion, EXTRACT(MONTH FROM fecha\_incorporacion) AS month\_incorporacion, EXTRACT(DAY FROM fecha\_incorporacion) AS day\_incorporacion, EXTRACT(HOUR FROM fecha\_incorporacion) AS hour\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minutes\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS second\_incorporacion FROM platzi.alumnos
Mi solucion select date\_part('hour', fecha\_incorporacion) as *hora\_incorporacion*, date\_part('minutes', fecha\_incorporacion) as *minutos\_incorporacion*, date\_part('seconds', fecha\_incorporacion) as *segundos\_incorporacion* from platzi.alumnos;
SELECT YEAR(*fecha*) AS *anio\_fecha*,month (*fecha*) AS *mes*,day (*fecha*) AS *dia*,HOUR(*fecha*) as *hora*, MINUTE(*fecha*)as *minuto*, SECOND(*fecha*)as *segundo*\* FROM *otratabla* where serial=123;
SELECT YEAR(*fecha*) AS *anio\_fecha*, month (*fecha*) AS *mes*, day (*fecha*) AS *dia*,\* FROM *otratabla* where serial=123;
Mi solución```txt SELECT * FROM PLATZI.ALUMNOS WHERE ID NOT IN (1,5,10,12,11,15,10); ```SELECT \* FROM PLATZI.ALUMNOS WHERE ID NOT IN (1,5,10,12,11,15,10);
````html SELECT * FROM PLATZI.ALUMNOS WHERE ID NOT IN (1,5,10,12,11,15,10); ```SELECT \* FROM PLATZI.ALUMNOS WHERE ID NOT IN (1,5,10,12,11,15,10); ````
Mi aporte, construir la hora en formato hora, minutos y segundos. SELECT EXTRACT (HOUR FROM fecha\_incorporacion) ||':'||EXTRACT (MINUTE FROM fecha\_incorporacion) ||':'||CAST(EXTRACT (SECOND FROM fecha\_incorporacion) AS INTEGER) AS hour\_incorporacion FROM platzi.alumnos;
**Opción 1 :** SELECT EXTRACT(YEAR FROM fecha\_incorporacion) AS anio\_incorporacion, EXTRACT (MONTH FROM fecha\_incorporacion) AS mes\_incorporacion, EXTRACT (DAY FROM fecha\_incorporacion) AS dia\_incorporacion, EXTRACT (HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT (MINUTE FROM fecha\_incorporacion) AS minutos\_incorporacion, EXTRACT (SECOND FROM fecha\_incorporacion) AS segundos\_incorporacion FROM platzi.alumnos **Opción 2 :** SELECT DATE\_PART('YEAR', fecha\_incorporacion) AS anio\_incorporacion, DATE\_PART ('Month', fecha\_incorporacion) AS mes\_incorporacion, DATE\_PART ('DAY', fecha\_incorporacion) AS dia\_incorporacion, DATE\_PART ('HOUR', fecha\_incorporacion) AS hora\_incorporacion, DATE\_PART ('MINUTES', fecha\_incorporacion) AS minutos\_incorporacion, DATE\_PART ('SECONDS', fecha\_incorporacion) AS segundos\_incorporacion FROM platzi.alumnos
📝 Ademas de obtener los valores numéricos de año, mes, día, hora, a partir de un campo de tipo `DATE`, también podemos consultar otro tipo de información como: `microseconds` : Microsegundos `milliseconds`: Milisegundos `second`: Segundos `minute`: Minutos `week`: Día de la semana, donde Lunes (1) y Domingo (7) `quarter`: Cuarto del año Cuarto 1 = Enero, Febrero, Marzo, Cuarto 4 = Octubre, Noviembre y Diciembre. `decade`: Decada `century`: Siglo `millennium`: Milenio 📌 Extraer esta información de los campos tipo DATE son de gran utilidad en el análisis de datos.
/\* EXTRAER LAS HORAS \*/ SELECT EXTRACT(HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minuto\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos; SELECT DATE\_PART('HOUR', fecha\_incorporacion) AS hora\_incorporacion, DATE\_PART('MINUTE', fecha\_incorporacion) AS minuto\_incorporacion, DATE\_PART('SECOND', fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos;
AQUI EL DESAFIO DE CLASE 13:![](https://static.platzi.com/media/user_upload/Screenshot%202024-04-18%2011.42.45-b3b5634e-b8b3-4dd6-870a-997c501e0d7b.jpg)
![](https://static.platzi.com/media/user_upload/Captura%20de%20pantalla%202024-04-16%20a%20la%28s%29%205.39.11%E2%80%AFp.%C2%A0m.-ed04489f-2ae6-4471-9bd3-d9ce62872c3d.jpg)
```js SELECT DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion, DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion, DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion FROM platzi.alumnos; ```
Amazing!![](https://static.platzi.com/media/user_upload/image-0b83b8de-c6f6-40e1-a460-ab84407441f8.jpg)
Reto 3 con **SQL Server** Seleccionar los resultados que no se encuentran en la ultima consulta de la clase anterior. Ultima consulta de la ultima clase: ```js SELECT * FROM platzi.alumnos WHERE id IN ( SELECT id FROM platzi.alumnos WHERE tutor_id = 30 ); ```Solución 1 al Reto: ```js SELECT * FROM platzi.alumnos WHERE id IN ( SELECT id FROM platzi.alumnos WHERE tutor_id <> 30 ); ```Solución 2: ```js SELECT * FROM platzi.alumnos WHERE id IN ( SELECT id FROM platzi.alumnos WHERE tutor_id != 30 ); ```Solución 3: ```js SELECT * FROM platzi.alumnos WHERE id NOT IN ( SELECT id FROM platzi.alumnos WHERE tutor_id = 30 ); ``` Yo intenté hacer el reto con la siguiente consulta, donde el profesor ponía 2 condiciones en el WHERE: ```js SELECT * FROM platzi.alumnos WHERE id IN ( SELECT id FROM platzi.alumnos WHERE tutor_id = 30 AND carrera_id = 31 ); ```Y probé de solucionarlo de la misma manera, pero me di cuenta que los resultados no eran los mismos. Esta solución: ```js SELECT * FROM platzi.alumnos WHERE id IN ( SELECT id FROM platzi.alumnos WHERE tutor_id <> 30 AND carrera_id <> 31 ); ```No es la misma que esta: ```js SELECT * FROM platzi.alumnos WHERE id NOT IN ( SELECT id FROM platzi.alumnos WHERE tutor_id = 30 AND carrera_id = 31 ); ```Donde la primera consulta sacaba 948 filas, mientras que la ultima sacaba 999 (que es la correcta). Para convertir la primera consulta en correcta debía poner un OR: ```js SELECT * FROM platzi.alumnos WHERE id IN ( SELECT id FROM platzi.alumnos WHERE tutor_id <> 30 OR carrera_id <> 31 ); ```

Solución del reto:

-- Con EXTRACT
SELECT 
	EXTRACT (HOUR FROM fecha_incorporacion) AS incorp_hour,
	EXTRACT (MINUTE FROM fecha_incorporacion) AS incorp_minute,
	ROUND(EXTRACT (SECOND FROM fecha_incorporacion)) AS incorp_second
FROM platzi.alumnos;

-- Con DATE_PART
SELECT
	DATE_PART ('HOUR', fecha_incorporacion) AS incorp_hour,
	DATE_PART ('MINUTE', fecha_incorporacion) AS incorp_minute,
	DATE_PART ('SECOND', fecha_incorporacion) AS incorp_second
FROM platzi.alumnos;
![](https://static.platzi.com/media/user_upload/image-e077616e-0e5d-4881-bbff-a5bbdfa52526.jpg)
```js SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS anio, EXTRACT(MONTH FROM fecha_incorporacion) AS mes, EXTRACT(DAY FROM fecha_incorporacion) AS dias, EXTRACT(HOUR FROM fecha_incorporacion) AS hora, EXTRACT(MINUTE FROM fecha_incorporacion) AS minutos, EXTRACT(SECOND FROM fecha_incorporacion) AS segundos FROM platzi.alumnos ```SELECT EXTRACT(YEAR FROM fecha\_incorporacion) AS anio, EXTRACT(MONTH FROM fecha\_incorporacion) AS mes, EXTRACT(DAY FROM fecha\_incorporacion) AS dias, EXTRACT(HOUR FROM fecha\_incorporacion) AS hora, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minutos, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundos FROM platzi.alumnos
Esta fue mis respuesta ```js SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion, EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion, EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion FROM platzi.alumnos; ```SELECT EXTRACT(HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minuto\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos;
```js ```
Me sale un nombre que no tengo en los comentarios :c
Este fue más sencillo que los ejercicios anteriores: ```txt SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion, EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion, EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion FROM platzi.alumnos; ```SELECT EXTRACT(HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minuto\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos;
Esta fue más sencilla que los ejercicios anteriores: ```js SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion, EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion, EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion FROM platzi.alumnos; ```SELECT EXTRACT(HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minuto\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos;
SELECT EXTRACT(HOUR FROM fecha_incorporacion) as hora_incorporación
FROM platzi.alumnos;

SELECT DATE_PART ('HOUR',fecha_incorporacion),
DATE_PART('MINUTE', fecha_incorporacion),
DATE_PART('SECOND', fecha_incorporacion)
FROM platzi.alumnos
SELECT DATE\_PART('YEAR', fecha\_incorporacion) AS anio\_incorporacion, DATE\_PART('MONTH', fecha\_incorporacion) AS mes\_incorporacion, DATE\_PART('DAY', fecha\_incorporacion) AS dia\_incorporacion, DATE\_PART('HOUR', fecha\_incorporacion) AS hora\_incorporacion FROM platzi.alumnos;
SELECT EXTRACT(HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minuto\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundo\_incorporacion, EXTRACT(MILLISECONDS FROM fecha\_incorporacion) AS milisegundo\_incorporacion FROM platzi.alumnos;
Esta seria mi solución: ```js select date_part('hour',fecha_incorporacion) Hora ,date_part('minutes',fecha_incorporacion) Minutos ,date_part('seconds',fecha_incorporacion) Segundos from platzi.alumnos ```
SELECT
  EXTRACT(HOUR FROM fecha_incorporacion) AS horas,
  EXTRACT(MINUTE FROM fecha_incorporacion) AS minutos,
  EXTRACT(SECOND FROM fecha_incorporacion) AS segundos
FROM platzi.alumnos;
EXTRACT(HOUR FROM fecha_incorporacion) obtiene las horas de la columna fecha_incorporacion.
EXTRACT(MINUTE FROM fecha_incorporacion) obtiene los minutos.
EXTRACT(SECOND FROM fecha_incorporacion) obtiene los segundos.

ESTA ES MI SOLUCIÓN:

select date_part ('year',  fecha_incorporacion ) as anio_incorporacion,
	date_part ('month',  fecha_incorporacion ) as month_incorporacion,
	date_part ('day',  fecha_incorporacion ) as day_incorporacion,
	date_part ('hour',  fecha_incorporacion ) as hour_incorporacion,
	(select extract (second from fecha_incorporacion) as second_incorporation) 

from platzi.alumnos;

La función EXTRACT en SQL se utiliza para extraer partes específicas de un valor de fecha o de un valor de tiempo, como el año, el mes, el día, la hora, etc. La sintaxis general de la función EXTRACT es la siguiente:

EXTRACT(field FROM source)
  • Field: Especifica la parte de la fecha o el tiempo que deseas extraer, como “YEAR”, “MONTH”, “DAY”, “HOUR”, etc.

  • Source: Es la columna o expresión que contiene la fecha o el tiempo del cual deseas extraer la información.

```txt SELECT DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion, DATE_PART('MONTH',fecha_incorporacion) AS mes_incorporacion, DATE_PART('DAY',fecha_incorporacion) AS dia_incorporacion, DATE_PART('HOUR',fecha_incorporacion) AS hora_incorporacion, DATE_PART('MINUTE',fecha_incorporacion) AS minutos_incorporacion, DATE_PART('SECOND',fecha_incorporacion) AS segundos_incorporacion, DATE_PART('MILLISECOND',fecha_incorporacion) AS milisegundos_incorporacion FROM platzi.alumnos; ```
```js --SELECT EXTRACT(UNIT_TIME, FIELD) SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS anio_incorporacion, EXTRACT(MONTH FROM fecha_incorporacion) AS mes_incorporacion, EXTRACT(DAY FROM fecha_incorporacion) AS dia_incorporacion, EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion, EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion, EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion FROM platzi.alumnos; --SELECT DATE_PART('UNIT_TIME', FIELD) SELECT DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion, DATE_PART('MONTH', fecha_incorporacion) AS mes_incorporacion, DATE_PART('DAY', fecha_incorporacion) AS dia_incorporacion, DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion, DATE_PART('MINUTE', fecha_incorporacion) AS minute_incorporacion, DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion FROM platzi.alumnos; ```--SELECT EXTRACT(UNIT\_TIME, FIELD) SELECT EXTRACT(YEAR FROM fecha\_incorporacion) AS anio\_incorporacion, EXTRACT(MONTH FROM fecha\_incorporacion) AS mes\_incorporacion, EXTRACT(DAY FROM fecha\_incorporacion) AS dia\_incorporacion, EXTRACT(HOUR FROM fecha\_incorporacion) AS hora\_incorporacion, EXTRACT(MINUTE FROM fecha\_incorporacion) AS minuto\_incorporacion, EXTRACT(SECOND FROM fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos; \--SELECT DATE\_PART('UNIT\_TIME', FIELD) SELECT DATE\_PART('YEAR', fecha\_incorporacion) AS anio\_incorporacion, DATE\_PART('MONTH', fecha\_incorporacion) AS mes\_incorporacion, DATE\_PART('DAY', fecha\_incorporacion) AS dia\_incorporacion, DATE\_PART('HOUR', fecha\_incorporacion) AS hora\_incorporacion, DATE\_PART('MINUTE', fecha\_incorporacion) AS minute\_incorporacion, DATE\_PART('SECOND', fecha\_incorporacion) AS segundo\_incorporacion FROM platzi.alumnos;
```js --option 1 SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion, EXTRACT(MINUTE FROM fecha_incorporacion) as minuto_incorporacion, EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion FROM PLATZI.alumnos --option 2 SELECT DATE_PART('HOUR',fecha_incorporacion) AS hora_incorporacion, DATE_PART('MINUTE',fecha_incorporacion)AS minuto_incorporacion, DATE_PART('SECOND',fecha_incorporacion) AS segundo_incorporacion FROM PLATZI.alumnos ```
select \* from platzi.alumnos where id in ( select id from platzi.alumnos where tutor\_id != 30 )
Mi solucion del reto de los segundos, minutos y horas: ```js SELECT DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion, DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion, DATE_PART('HOUR', fecha_incorporacion) AS hour_incorporacion FROM platzi.alumnos; ```
Mi solucion al reto anterior: ```js SELECT * FROM platzi.alumnos WHERE id NOT IN ( SELECT id FROM platzi.alumnos WHERE tutor_id = 30 ); ```
La segunda forma me queda: SELECT EXTRACT (HOUR FROM fecha\_incorporacion) AS hour\_incorporacion, EXTRACT (MIN FROM fecha\_incorporacion) AS min\_incorporacion, EXTRACT (SEC FROM fecha\_incorporacion) AS sec\_incorporacion FROM platzi.alumnos
```js -- Reto1: Sacar los campos de la hora SELECT fecha_incorporacion, EXTRACT(HOUR FROM fecha_incorporacion), EXTRACT(MINUTE FROM fecha_incorporacion), EXTRACT(SECOND FROM fecha_incorporacion) FROM platzi.alumnos; -- Reto2: Sacar los campos de la hora SELECT fecha_incorporacion, DATE_PART('HOUR', fecha_incorporacion) AS HORA, DATE_PART('MINUTE', fecha_incorporacion) AS MINUTO, DATE_PART('SECOND', fecha_incorporacion) AS SEGUNDO FROM platzi.alumnos; ```-- Reto1: Sacar los campos de la hora SELECT fecha\_incorporacion, EXTRACT(HOUR FROM fecha\_incorporacion), EXTRACT(MINUTE FROM fecha\_incorporacion), EXTRACT(SECOND FROM fecha\_incorporacion) FROM platzi.alumnos; \-- Reto2: Sacar los campos de la hora SELECT fecha\_incorporacion, DATE\_PART('HOUR', fecha\_incorporacion) AS HORA, DATE\_PART('MINUTE', fecha\_incorporacion) AS MINUTO, DATE\_PART('SECOND', fecha\_incorporacion) AS SEGUNDO FROM platzi.alumnos;
SELECT \* FROM platzi.alumnos WHERE id BETWEEN (SELECT (COUNT (id)/2+1) AS cantidad FROM platzi.alumnos ) AND (SELECT COUNT (id) AS cantidad FROM platzi.alumnos); SELECT \* FROM platzi.alumnos WHERE id > (SELECT(COUNT (id)/2) AS cantidad FROM platzi.alumnos);

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hour_incorp,
EXTRACT(MINUTE FROM fecha_incorporacion) AS minute_incorp,
EXTRACT(SECOND FROM fecha_incorporacion) AS second_incorp
FROM platzi.alumnos

/* Manejando datos tipo time*/

SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion 
FROM platzi.alumnos;

SELECT EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion 
FROM platzi.alumnos;

SELECT EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion 
FROM platzi.alumnos;

SELECT DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
	   DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion,
	   DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos
WHERE (DATE_PART('HOUR',fecha_incorporacion) < 20);```

Diferencia (portabilidad):

  • EXTRACT() es parte del estándar SQL
  • DATE_PART() es de PostgreSQL

Mi solucion al reto tanto con EXTRACT y DATE_PART:

-- ¿Qué hora se inscriben mas los alumnos?
SELECT EXTRACT(HOUR FROM fecha_incorporacion) AS hrs,COUNT(EXTRACT(HOUR FROM fecha_incorporacion)) as incorporacion
FROM platzi.alumnos
GROUP BY hrs
ORDER BY incorporacion DESC;


-- Reto 1
SELECT EXTRACT(HOURS FROM fecha_incorporacion) AS hora_incorporacion,
EXTRACT(minute FROM fecha_incorporacion) AS minutos_incorporacion,
EXTRACT(second FROM fecha_incorporacion) AS hora_incorporacion
FROM platzi.alumnos;


--Reto 2
SELECT DATE_PART('HOURS', fecha_incorporacion) AS horas_incorporacion,
DATE_PART('minute',fecha_incorporacion) AS minutos_incorporacion,
DATE_PART('second', fecha_incorporacion) AS hora_incorporacion
FROM platzi.alumnos;


select date_part('hour', fecha_incorporacion) as hora, 
	   date_part('minute', fecha_incorporacion) as minuto,
	   date_part('second', fecha_incorporacion) as segundo
from platzi.alumnos;

select extract(hour from fecha_incorporacion) as hora,
	   extract(minute from fecha_incorporacion) as minuto,
	   extract(second from fecha_incorporacion) as segundo
from platzi.alumnos;

Hola, por aca adjunto mi solución.

-- EXTRACT()

SELECT nombre, 
	EXTRACT (YEAR FROM fecha_incorporacion) AS Año_incorporacion,
	EXTRACT (MONTH FROM fecha_incorporacion) AS Mes_incorporacion,
	EXTRACT (DAY FROM fecha_incorporacion) AS Dia_incorporacion,
	EXTRACT (HOUR FROM fecha_incorporacion) AS Hora_incorporacion,
	EXTRACT (MINUTE FROM fecha_incorporacion) AS Minuto_incorporacion,
	EXTRACT (SECOND FROM fecha_incorporacion) AS Segundo_incorporacion
FROM platzi.alumnos;

-- DATE_PART()

SELECT nombre, 
	DATE_PART('YEAR', fecha_incorporacion) AS Año_incorporacion,
	DATE_PART('MONTH', fecha_incorporacion) AS Mes_incorporacion,
	DATE_PART('DAY', fecha_incorporacion) AS Dia_incorporacion,
	DATE_PART('HOUR', fecha_incorporacion) AS Hora_incorporacion,
	DATE_PART('MINUTE', fecha_incorporacion) AS Minuto_incorporacion,
	DATE_PART('SECOND', fecha_incorporacion) AS Segundo_incorporacion
FROM platzi.alumnos;

Mi solución.

SELECT 	extract(year from fecha_incorporacion) AS anio, 
		extract(month from fecha_incorporacion) AS mes,
        extract(day from fecha_incorporacion) AS día, 
        extract(hour from fecha_incorporacion) AS hora,
        extract(minute from fecha_incorporacion) AS minutos,
        extract(second from fecha_incorporacion) AS segundos,
        extract(microsecond from fecha_incorporacion) AS microseg
FROM alumnos;

No olvidar que cuando usas funciones propias de gestor como
EXTRACT cuando deseas usarlo en el WHERE u otra parte debes llevar consigo la función que te ayuda a obtener el resultado

La solucion al reto con ambas sentencias es:
.

SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS anio_incorporacion,
	   EXTRACT(MONTH FROM fecha_incorporacion) AS mes_incorporacion,
	   EXTRACT(DAY FROM fecha_incorporacion) AS dia_incorporacion,
	   EXTRACT(HOUR FROM fecha_incorporacion) AS hora_incorporacion,
	   EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_incorporacion,
	   EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos

y la segunda es:

SELECT DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion,
	   DATE_PART('MONTH', fecha_incorporacion) AS mes_incorporacion,
	   DATE_PART('DAY', fecha_incorporacion) AS dia_incorporacion,
	   DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
	   DATE_PART('MINUTE', fecha_incorporacion) AS minuto_incorporacion,
	   DATE_PART('SECOND', fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos

NOTA: Usando la funcion EXTRACT, los valores de los segundos se muestran con varios decimales, mientras los consultados con DATE_PART, los segundos se muestran como numeros enteros. Se podria usar la funcion ROUND para mostrar los segundos sin decimales.

SELECT DATE_PART(‘HOUR’,fecha_incorporacion) AS hora_incorporacion
FROM platzi.alumnos;

SELECT DATE_PART(‘MINUTES’,fecha_incorporacion) AS min_incorporacion
FROM platzi.alumnos;

SELECT DATE_PART(‘SECONDS’,fecha_incorporacion) AS seg_incorporacion
FROM platzi.alumnos;

SELECT 
DATE_PART('YEAR', fecha_incorporacion) AS anio_incorporacion,
DATE_PART('MONTH', fecha_incorporacion) AS mes_incorporacion,
DATE_PART('DAY', fecha_incorporacion) AS dia_incorporacion,
DATE_PART('HOURS', fecha_incorporacion) AS hora_incorporacion
FROM platzi.alumnos
ORDER BY DATE_PART('YEAR', fecha_incorporacion) DESC;

asi mas lindo 😃

Me tarda un monton cada query, porque será?

Mi solución con DATE_PART

SELECT DATE_PART('HOUR', fecha_incorporacion) AS hora_incorporacion,
	   DATE_PART('MINUTES', fecha_incorporacion) AS min_incorporacion,
	   DATE_PART('SECONDS', fecha_incorporacion) AS seg_incorporacion
FROM platzi.alumnos;

con extract

SELECT EXTRACT (HOUR FROM fecha_incorporacion) AS  hora_incorporacion,
 	   EXTRACT (MINUTE FROM fecha_incorporacion) AS  min_incorporacion,
	   EXTRACT (SECOND FROM fecha_incorporacion) AS seg_incorporacion
FROM platzi.alumnos;
Solución 1:

SELECT EXTRACT (HOUR FROM fecha_incorporacion) AS Hora,
		 EXTRACT (MINUTE FROM fecha_incorporacion) AS Minuto,
		 	EXTRACT (SECOND FROM fecha_incorporacion) AS Segundo
FROM platzi.alumnos;

Solución 2:

SELECT DATE_PART('HOUR', fecha_incorporacion) AS Hora,
		DATE_PART('MINUTE', fecha_incorporacion) AS Minuto,
		DATE_PART('SECOND', fecha_incorporacion) AS Segundo
FROM platzi.alumnos;

Mi solución:

DATE_PART:

select date_part(‘hour’, fecha_incorporacion) as hour_incorporacion,
date_part(‘minute’, fecha_incorporacion) as minute_incorporacion,
date_part(‘second’, fecha_incorporacion) as second_incorporacion
from platzi.alumnos;

EXTRACT:

select extract (hour from fecha_incorporacion) as hour_incorporacion
from platzi.alumnos;

Yo lo hice solo cambiando el = a !=

SELECT *
FROM platzi.alumnos
WHERE id IN (
SELECT id
FROM platzi.alumnos
WHERE tutor_id != 30
);

Mi solución:

SELECT fecha_incorporacion, EXTRACT(HOUR FROM fecha_incorporacion) AS hr_incorporacion,
EXTRACT(MIN FROM fecha_incorporacion) AS min_incorporation,
EXTRACT (SECOND FROM fecha_incorporacion) AS seg_incorporacion
FROM alumnos;

Y:

SELECT fecha_incorporacion,
DATE_PART('HOUR', fecha_incorporacion) AS hr_incorporacion,
DATE_PART('MIN', fecha_incorporacion) AS min_incorporacion,
DATE_PART('SECOND', fecha_incorporacion) AS seg_incorporation
FROM alumnos;

/FECHAS/

SELECT*FROM PLATZI.alumnos

SELECT EXTRACT( YEAR FROM fecha_incorporacion) as anio_incorporacion
FROM PLATZI.alumnos

SELECT DATE_PART('YEAR', fecha_incorporacion) as anio_incorporacion
FROM PLATZI.alumnos

SELECT DATE_PART('YEAR',fecha_incorporacion)as anio_incorporacion,
	   DATE_PART('MONTH',fecha_incorporacion)as mes_incorporacion,
	   DATE_PART('DAY',fecha_incorporacion)as dia_incorporacion,
	   DATE_PART('HOUR',fecha_incorporacion)as hora_incorporacion,
	   DATE_PART('MINUTES',fecha_incorporacion)as minutos_incorporacion,
	   DATE_PART('SECONDS',fecha_incorporacion)as segundos_incorporacion
FROM PLATZI.alumnos

Mi solución

–Con extact
SELECT
EXTRACT (HOUR FROM fecha_incorporacion) AS hora_incorporacion,
EXTRACT (MINUTE FROM fecha_incorporacion) AS minuto_incorporacion,
EXTRACT (SECOND FROM fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos;

–Con DATE_PART
SELECT
DATE_PART(‘HOUR’, fecha_incorporacion) AS hora_incorporacion,
DATE_PART(‘MINUTE’, fecha_incorporacion) AS minuto_incorporacion,
DATE_PART(‘SECOND’, fecha_incorporacion) AS segundo_incorporacion
FROM platzi.alumnos;

SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS anio_incorporacion
FROM platzi.alumnos;
SELECT DATE_PART('YEAR',fecha_incorporacion) AS anio_incorporacion,
		DATE_PART('MONTH',fecha_incorporacion) AS mes_incorporacion,
		DATE_PART('DAY',fecha_incorporacion) AS dia_incorporacion,
		DATE_PART('HOUR',fecha_incorporacion) AS hora_incorporacion,
		DATE_PART('MINUTE',fecha_incorporacion) AS min_incorporacion,
		DATE_PART('SECOND',fecha_incorporacion) AS seg_incorporacion,fecha_incorporacion
FROM platzi.alumnos;

Me ha costado un poco seguir el ritmo de los comando. ya que uso sql server y varian un poco la estructura.
yo hice algo asi

select datepart (year, fecha_incorporacion) as anio, datepart (MONTH, fecha_incorporacion) as Mes, datepart (DAY,fecha_incorporacion) as Dia
from dbo.estudiantes;

Mis propuestas de solución empleando EXTRACT y DATE_PART extrayendo todos los elementos que conforman un campo de tipo Date-Time

--Solución 1--
SELECT EXTRACT(YEAR FROM fecha_incorporacion) AS anno_inicio, 
			EXTRACT(MONTH FROM fecha_incorporacion) AS mes_inicio, 
			EXTRACT(DAY FROM fecha_incorporacion) AS dia_inicio, 
			EXTRACT(HOUR FROM fecha_incorporacion) AS hora_inicio, 
			EXTRACT(MINUTE FROM fecha_incorporacion) AS minuto_inicio, 
EXTRACT(SECOND FROM fecha_incorporacion) AS segundo_inicio
FROM platzi.alumnos;

--Solución 2--
SELECT  DATE_PART('YEAR', fecha_incorporacion) AS anno_inicio,
        DATE_PART('MONTH', fecha_incorporacion) AS mes_inicio,
        DATE_PART('DAY', fecha_incorporacion) AS dia_inicio,
				DATE_PART('HOUR', fecha_incorporacion) AS hora_inicio,
				DATE_PART('MINUTE', fecha_incorporacion) AS minutos_inicio,
				DATE_PART('SECOND', fecha_incorporacion) AS segundos_inicio
FROM platzi.alumnos;