greatest(*cols)
Описание
Функция greatest()
возвращает наибольшее значение из списка столбцов или выражений.
Параметры
*cols
: Column - один или несколько столбцов или выражений для сравнения
Возвращаемое значение
Тип значения из входных столбцов - наибольшее значение
Пример использования
from pyspark.sql.functions import greatest
from pyspark.sql import SparkSession
# Создаем SparkSession
spark = SparkSession.builder.appName("greatest_example").getOrCreate()
# Создаем DataFrame
data = [
(1, 2, 3),
(4, 5, 6),
(7, 8, 9)
]
df = spark.createDataFrame(data, ["col1", "col2", "col3"])
# Находим наибольшее значение среди трех столбцов
result = df.select(
"col1", "col2", "col3",
greatest("col1", "col2", "col3").alias("max_value")
).show()
# Результат:
# +----+----+----+---------+
# |col1|col2|col3|max_value|
# +----+----+----+---------+
# |1 |2 |3 |3 |
# |4 |5 |6 |6 |
# |7 |8 |9 |9 |
# +----+----+----+---------+
Примечания
- Для нахождения наименьшего значения используйте
least()
- NULL значения игнорируются при сравнении
- Если все значения NULL, возвращается NULL
- Функция работает с числовыми типами, строками и датами