BaşlayınÜcretsiz başlayın

PIVOT tablo oluşturmak için FILTER kullanma

Önceki egzersizde, dört kurumun her birinin kestiği park ihlallerinin (sayısal kodlarına göre) sayısı hakkında bilgi veren bir sorgu yazmıştın. Sonuçlar istenen tüm bilgileri içeriyordu ancak sonuçlarda her issuing_agency için seçilen değerlere bağlı olarak her violation_code değerinin dört kez tekrarlı gösterildiği bir formatta sunulmuştu. Aynı veriyi daha derli toplu göstermek için bir pivot tablo oluşturabilirsin.

Bu egzersizde, sonuçları pivot tablo formatında üretmek için FILTER ifadesini kullanan bir sorgu yazacaksın. Bu geliştirilmiş sunum, dört ilgili kurumun kestiği park ihlallerine ilişkin raporda verilerin daha kolay kullanılmasını sağlar.

Bu egzersiz, kursun bir parçasıdır

PostgreSQL Veritabanlarında Veri Temizleme

Kursa Göz Atın

Egzersiz talimatları

  • Police sütununu, issuing_agency değeri P olan her violation_code için kayıt sayısı olarak tanımla.
  • Sanitation sütununu, issuing_agency değeri S olan her violation_code için kayıt sayısı olarak tanımla.
  • Parks sütununu, issuing_agency değeri K olan her violation_code için kayıt sayısı olarak tanımla.
  • Transportation sütununu, issuing_agency değeri V olan her violation_code için kayıt sayısı olarak tanımla.

Uygulamalı etkileşimli egzersiz

Bu egzersizi bu örnek kodu tamamlayarak deneyin.

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
Kodu Düzenle ve Çalıştır