Las habilidades de Snowpark se verán cada vez más útiles a medida que pase el tiempo, y por esta razón, ¡estamos publicando otro desafío de Snowpark!
Esta semana, estamos registrando UDF.
Su código de inicio se encuentra a continuación: creará una tabla para usted que tiene empleados y sus fechas de inicio.
Código de inicio
create or replace file format frosty_csv
type = csv
skip_header = 1
field_optionally_enclosed_by = '"';
create stage w29_stage
url = 's3://frostyfridaychallenges/challenge_29/'
file_format = frosty_csv;
list @w29_stage;
create table week29 as
select t.$1::int as id,
t.$2::varchar(100) as first_name,
t.$3::varchar(100) as surname,
t.$4::varchar(250) as email,
t.$5::datetime as start_date
from @w29_stage (pattern=>'.*start_dates.*') t;
Debe crear una UDF que produzca un año fiscal para start_date. La lógica debería ser que si el mes es de mayo en adelante * entonces el año fiscal debería ser el año en curso +1, de lo contrario, el año en curso.
Por ejemplo:
2022-05-13 = AF23
2022-02-11=AF22
Una vez que haya escrito su UDF, ejecute el siguiente código:
data = session.table("week29").select(
col("id"),
col("first_name"),
col("surname"),
col("email"),
col("start_date"),
fiscal_year("start_date").alias("fiscal_year")
)
data.show()
y
data.group_by("fiscal_year").agg(col("*"), "count").show()
El resultado debería verse así:
Recuerda que si deseas participar:
- Regístrate como miembro de Frosty Friday. Puedes hacerlo haciendo clic en la barra lateral y luego yendo a «REGISTRARSE» (ten en cuenta que unirte a nuestra lista de correo no te proporcionará una cuenta de Frosty Friday).
- Publica tu código en GitHub y asegúrate de que sea de acceso público (consulta nuestra guía si no sabes cómo hacerlo).
- Publica la URL en los comentarios del desafío.
Si tienes alguna pregunta técnica que te gustaría plantear a la comunidad, puedes hacerlo aquí, en nuestro hilo dedicado a estos retos.
Deja una respuesta
Lo siento, debes estar conectado para publicar un comentario.