ПочатиПочніть безкоштовно

Використання FILTER для створення зведеної таблиці

У попередній вправі ви написали запит, який надавав інформацію про кількість порушень правил паркування (за їхнім числовим кодом), виписаних кожною з чотирьох установ. Результати містили всі потрібні дані, але були подані у форматі, де кожен violation_code дублювався до чотирьох разів (для кожного вибраного issuing_agency). Більш компактного подання тих самих даних можна досягти, створивши зведену таблицю.

У цій вправі ви напишете запит із використанням FILTER, щоб отримати результати у форматі зведеної таблиці. Таке поліпшене подання даних зручніше використати в звіті про порушення паркування, виписані кожною з чотирьох установ, що нас цікавлять.

Ця вправа є частиною курсу

Очищення даних у базах даних PostgreSQL

Переглянути курс

Інструкції до вправи

  • Визначте стовпець Police як кількість записів для кожного violation_code з issuing_agency = P.
  • Визначте стовпець Sanitation як кількість записів для кожного violation_code з issuing_agency = S.
  • Визначте стовпець Parks як кількість записів для кожного violation_code з issuing_agency = K.
  • Визначте стовпець Transportation як кількість записів для кожного violation_code з issuing_agency = V.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

SELECT 
	violation_code, 
    -- Define the "Police" column
	COUNT(issuing_agency) FILTER (WHERE issuing_agency = '___') AS "Police",
    -- Define the "Sanitation" column
	COUNT(___) FILTER (WHERE ___ = '___') AS "___",
    -- Define the "Parks" column
	___(___) ___ (WHERE ___ = '___') AS "___",
    -- Define the "Transportation" column
	___(___) ___ (___ ___ = '___') AS "___"
FROM 
	parking_violation 
GROUP BY 
	violation_code
ORDER BY 
	violation_code
Редагувати та запускати код