Найти в Дзене
Базовый SQL

Базовый SQL

Начало работы, основные функции и операторы
подборка · 19 материалов
1 год назад
Проект - базовый SQL
Венчурные фонды — это финансовые организации, которые могут позволить себе высокий риск и инвестировать в компании с инновационной бизнес-идеей или разработанной новой технологией, то есть в стартапы. Цель венчурных фондов — в будущем получить значительную прибыль, которая в разы превысит размер их трат на инвестиции в компанию. Если стартап подорожает, венчурный фонд может получить долю в компании или фиксированный процент от её выручки. Чтобы процесс финансирования стал менее рискованным, его делят на стадии — раунды...
1 год назад
Оконные функции: практика
Задача 1 Напишите запрос, который проранжирует расходы на привлечение пользователей за каждый день по убыванию. Выгрузите три поля: SELECT CAST(created_at AS date), costs, ROW_NUMBER() OVER(ORDER BY costs DESC) FROM tools_shop.costs Задача 2 Измените предыдущий запрос: записям с одинаковыми значениями расходов назначьте одинаковый ранг. Ранги не должны прерываться. SELECT CAST(created_at AS date), costs, DENSE_RANK() OVER(ORDER BY costs DESC) FROM tools_shop.costs Задача 3 Используя оконную функцию, выведите список уникальных user_id пользователей, которые совершили три заказа и более...
1 год назад
Функции смещения: LEAD(), LAG()
С помощью функций смещения можно для каждой записи с заказом пользователя вернуть дату прошлого или следующего заказа — previous_order_dt и next_order_dt соответственно. Функция LAG() позволяет возвращать предыдущие записи, а LEAD() — следующие. У функций есть несколько аргументов: Аргумент <поле> указывает, из какого поля нужно вернуть значения. Аргумент <смещение> показывает, на какое количество строк относительно текущей должно произойти смещение. Аргумент <значение по умолчанию> указывает, какое значение нужно вернуть в случае, если нужной строки в таблице нет...
1 год назад
Расчёт кумулятивных значений
Оператор ORDER BY в выражении OVER позволяет не только сортировать значения. Если сочетать оператор с агрегирующими функциями, можно производить вычисления кумулятивно, то есть с накоплением. Задача 1 Напишите запрос к таблице tools_shop.orders, который выведет: SELECT created_at, total_amt, SUM(total_amt) OVER (ORDER BY created_at) FROM tools_shop.orders Задача 2 Напишите запрос к таблице tools_shop...
1 год назад
Оконные функции
Оконные функции выполняют вычисления для набора записей, объединённых по какому-либо признаку. Такой набор называют окном. Вместе с текущей записью оконная функция обрабатывает остальные записи, которые входят в то же окно. Для каждой записи функция выводит одно значение. Этим оконная функция отличается от агрегирующей: и та и другая вычисляются для набора записей, но оконная функция не объединяет записи в одну, как агрегирующая, сохраняя независимость записей. Проще говоря, оконные функции возвращают столько же значений, сколько получили на вход...
1 год назад
Обработка и качество данных в PySpark
Для обработки пропущенных значений используют функцию dropna(), а также fillna(). Задача 1 Удалите из датафрейма пропущенные значения. Затем напечатайте на экране количество строк в датафрейме. import numpy as np import pandas as pd from pyspark.sql import SparkSession APP_NAME = "DataFrames" SPARK_URL = "local[*]" spark = SparkSession.builder.appName(APP_NAME) \ .config('spark.ui.showConsoleProgress', 'false') \ .getOrCreate() taxi = spark.read.load('/datasets/pickups_terminal_5.csv', format='csv', header='true', inferSchema='true') taxi = taxi...