Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Фільтрація та Вибірка Даних за Допомогою SQL | Робота з Даними
Databricks: Основи для Початківців

Фільтрація та Вибірка Даних за Допомогою SQL

Свайпніть щоб показати меню

Note
Визначення

Тимчасове представлення — це псевдонім DataFrame з обмеженням на сесію, який дозволяє взаємодіяти з вашими даними за допомогою стандартного синтаксису SQL. Дані не переміщуються і не дублюються; це лише SQL-дружнє «вікно» до DataFrame, що знаходиться в пам'яті кластера.

Хоча Python чудово підходить для створення складних конвеєрів, багато спеціалістів з даних віддають перевагу читабельності та швидкості SQL для фільтрації та вибору даних. У Databricks не потрібно обирати лише один підхід. Ви можете перетворити DataFrame з Python у тимчасову SQL-таблицю ("view") та одразу почати виконувати до неї запити.

Створення тимчасового представлення

Перш ніж виконувати SQL-запит до DataFrame, необхідно надати йому ім'я, яке SQL-движок зможе розпізнати. Це можна зробити за допомогою методу createOrReplaceTempView.

# Create a SQL view named 'diamond_view' from our existing DataFrame
df.createOrReplaceTempView("diamond_view")

Частина команди "Replace" є важливою: вона гарантує, що при повторному запуску комірки представлення просто оновиться, а не викличе помилку. Це представлення існуватиме лише протягом поточної сесії вашого блокнота.

Запити з використанням %sql Magic

Після реєстрації представлення можна змінити мову. Використовуючи команду magic %sql на початку нової комірки, можна виконувати ті ж самі вибірки та фільтрації, що й у Python, але використовуючи стандартний SQL-синтаксис.

%sql
SELECT carat, cut, depth
FROM diamond_view
WHERE price > 500

Потужність фільтрації в SQL

SQL особливо зручна для складної фільтрації. Можна використовувати оператор IN для фільтрації за кількома значеннями або оператор LIKE для пошуку за шаблоном — завдання, які часто є більш багатослівними в Python.

%sql
SELECT * FROM diamond_view
WHERE cut IN ('Good', 'Premium')
  AND clarity LIKE '%V%'

Вибір і перейменування стовпців

У SQL вибір і перейменування стовпців здійснюється просто за допомогою ключового слова AS. Це поширена практика для надання заголовкам фінального звіту більш професійного вигляду.

%sql
SELECT 
  carat, 
  cut AS Diamond_Quality, 
  price AS Selling_Price
FROM diamond_view

Чому використовувати тимчасове подання?

Можна запитати: «Чому просто не виконати запит до таблиці безпосередньо з каталогу?» Перевага тимчасового подання полягає в тому, що воно дозволяє виконувати запити до DataFrame, який вже частково очищено або змінено в Python. Це створює міст між Python, який використовується для складної обробки даних, і SQL, який застосовується для фінального аналізу та візуалізації.

1. Який метод Python потрібно виконати перед тим, як використовувати %sql для запиту до DataFrame?

2. Що відбувається з "Тимчасовим представленням" після від'єднання блокнота від кластера або завершення сесії?

question mark

Який метод Python потрібно виконати перед тим, як використовувати %sql для запиту до DataFrame?

Виберіть правильну відповідь

question mark

Що відбувається з "Тимчасовим представленням" після від'єднання блокнота від кластера або завершення сесії?

Виберіть правильну відповідь

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 5

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Фільтрація та Вибірка Даних за Допомогою SQL

Note
Визначення

Тимчасове представлення — це псевдонім DataFrame з обмеженням на сесію, який дозволяє взаємодіяти з вашими даними за допомогою стандартного синтаксису SQL. Дані не переміщуються і не дублюються; це лише SQL-дружнє «вікно» до DataFrame, що знаходиться в пам'яті кластера.

Хоча Python чудово підходить для створення складних конвеєрів, багато спеціалістів з даних віддають перевагу читабельності та швидкості SQL для фільтрації та вибору даних. У Databricks не потрібно обирати лише один підхід. Ви можете перетворити DataFrame з Python у тимчасову SQL-таблицю ("view") та одразу почати виконувати до неї запити.

Створення тимчасового представлення

Перш ніж виконувати SQL-запит до DataFrame, необхідно надати йому ім'я, яке SQL-движок зможе розпізнати. Це можна зробити за допомогою методу createOrReplaceTempView.

# Create a SQL view named 'diamond_view' from our existing DataFrame
df.createOrReplaceTempView("diamond_view")

Частина команди "Replace" є важливою: вона гарантує, що при повторному запуску комірки представлення просто оновиться, а не викличе помилку. Це представлення існуватиме лише протягом поточної сесії вашого блокнота.

Запити з використанням %sql Magic

Після реєстрації представлення можна змінити мову. Використовуючи команду magic %sql на початку нової комірки, можна виконувати ті ж самі вибірки та фільтрації, що й у Python, але використовуючи стандартний SQL-синтаксис.

%sql
SELECT carat, cut, depth
FROM diamond_view
WHERE price > 500

Потужність фільтрації в SQL

SQL особливо зручна для складної фільтрації. Можна використовувати оператор IN для фільтрації за кількома значеннями або оператор LIKE для пошуку за шаблоном — завдання, які часто є більш багатослівними в Python.

%sql
SELECT * FROM diamond_view
WHERE cut IN ('Good', 'Premium')
  AND clarity LIKE '%V%'

Вибір і перейменування стовпців

У SQL вибір і перейменування стовпців здійснюється просто за допомогою ключового слова AS. Це поширена практика для надання заголовкам фінального звіту більш професійного вигляду.

%sql
SELECT 
  carat, 
  cut AS Diamond_Quality, 
  price AS Selling_Price
FROM diamond_view

Чому використовувати тимчасове подання?

Можна запитати: «Чому просто не виконати запит до таблиці безпосередньо з каталогу?» Перевага тимчасового подання полягає в тому, що воно дозволяє виконувати запити до DataFrame, який вже частково очищено або змінено в Python. Це створює міст між Python, який використовується для складної обробки даних, і SQL, який застосовується для фінального аналізу та візуалізації.

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 4. Розділ 5
some-alt