1. Learn
  2. /
  3. Cursuri
  4. /
  5. Introducere în Spark SQL în Python

Connected

exercițiu

Agregarea aceleiași coloane de două ori

Există situații în care notația cu punct poate fi mai greoaie decât SQL. Acest exercițiu calculează primul și ultimul timp pentru fiecare linie de tren. Codul de mai jos realizează acest lucru folosind notația cu punct.

from pyspark.sql.functions import min, max, col
expr = [min(col("time")).alias('start'), max(col("time")).alias('end')]
dot_df = df.groupBy("train_id").agg(*expr)
dot_df.show()
+--------+-----+-----+
|train_id|start|  end|
+--------+-----+-----+
|     217|6:06a|6:59a|
|     324|7:59a|9:05a|
+--------+-----+-----+

Misiunea ta este să obții același rezultat folosind o interogare SQL. DataFrame-ul df a fost înregistrat ca tabel cu numele schedule.

Instrucțiuni

100 XP
  • Scrie o interogare SQL care produce un rezultat identic cu cel al interogării bazate pe notația cu punct.