Tekrar - Gayrimenkul Müteahhidi
Coddy'nin SQL Journey'sinin Temeller bölümünün bir parçası. Ders 51 / 72.
Görev
OrtaMevcut tablolar ve sütunlar:
real_estate:asset_id,value,datepotential:asset_id,forecast
Bazı analistler gayrimenkul varlıklarının büyümesinin ne kadar olacağını tahmin eder. Tahminlerinin doğru olup olmadığını kontrol etmek istiyoruz.
real_estate tablosundaki her varlık için, daha yeni bir tarihteki value ile daha eski bir tarihteki değer arasındaki oranı hesaplayın.
Örneğin, değeri 2022-01-01 tarihinde 5 ve 2022-05-01 tarihinde 10 olan bir varlık varsa, oran 10/5 = 2 olur.
İki tarih arasındaki gün farkının 101'den küçük olduğu tüm karşılaştırmaları yok sayın.
Her varlık için birçok tarih olduğundan karşılaştırılacak birçok oran vardır. Her varlık için yalnızca en büyük oranı tutun.
Son olarak, bu oranı potential tablosundaki eşleşen tahmine bölün (bu alana ratio_forecast adını verin) ve sonuçları azalan düzende sıralayın.
Sonuçta asset_id ve ratio_forecast bulunmalıdır.
Yalnızca ratio_forecast değeri 1'den büyük olan varlıkları tutun.
Not: Bölme işleminden (/) ondalık sonuç elde etmek için bazen payı 1.0 ile çarpmanız gerekir.
Örneğin, ondalık sonucu elde etmek için a / b yerine a * 1.0 / b kullanın (a ve b değişken olduğunda).
Kendin dene
-- Dış sorgu: aşağıda hesaplanan sayıyı diğer tablodaki eşleşen sayıya böl
SELECT potential.asset_id, ____ AS ratio_forecast
FROM (
-- İç sorgu: tabloyu kendisiyle eşleştir ki daha eski bir satır daha yeni bir satırla karşılaştırılabilsin
SELECT r1.asset_id, ____ AS ratio
FROM real_estate AS r1
JOIN real_estate AS r2 ON ____
-- Yalnızca zaman olarak yeterince uzak olan çiftleri tut
WHERE JULIANDAY(r2.date) - JULIANDAY(r1.date) > ____
-- Her grup için bir sonuç satırı, yalnızca en büyük tek karşılaştırmayı tutarak
GROUP BY r1.asset_id
) AS actual
JOIN potential ON ____
WHERE ratio_forecast > 1
ORDER BY ____Temeller bölümündeki tüm dersler
4Daha Fazla Anahtar Sözcük
IN anahtar sözcüğüBETWEEN anahtar sözcüğüLIKE anahtar sözcüğüAS anahtar sözcüğüTekrar - Cep Telefonu Modelleri2Koşullar
Koşulların TemelleriAND Anahtar SözcüğüOR Anahtar SözcüğüNOT Anahtar SözcüğüBirden Çok Koşulu BirleştirmeParantezlerBoolean Değerler3Belirli Döndürme Biçimi
Null değerlerSonuçları Sıralama 1. BölümSonuçları Sıralama 2. BölümTekrar - Siber Güvenlik FirmasıKayıt Sayısını SınırlamaTekrar - Araç Fabrikası6Giriş Alıştırmaları
Tekrar - Parlamento SeçimiTekrar - Polisin Suçluyu TutuklamasıTekrar - Bar İçecek KabıTekrar - Mühendis Yeni Sütunlar9Birden Çok Tablo
Temel JOIN Bölüm 1Temel JOIN Bölüm 2Tekrar - JOINKendine JOINTekrar - Kendine JOINUNIONSorguları Basitleştirme, WITH Anahtar SözcüğüTekrar - WITH SorgularıTekrar - Gayrimenkul Müteahhidi12Pencere Fonksiyonları 2. Bölüm
RANK ve DENSE_RANK FonksiyonlarıTekrar - RANK ve DENSE_RANKNTILE FonksiyonuToplama FonksiyonlarıROWS ve RANGE ÖlçütüKendi başına pratik yap: SQL playground