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

DIFFERENCE() ile adları karşılaştırma

Önceki egzersizde, flight_statistics tablosundaki istatistikçilerin adlarını kontrol etmek için SOUNDEX() kullandın.

Bu kez benzer bir şeyi DIFFERENCE() fonksiyonunu kullanarak yapmak istiyorsun. DIFFERENCE(), iki dize arasında benzerlik veya birebir eşleşme varsa 4, çok az ya da hiç benzerlik yoksa 0 döndürür.

Eğer iki dize için DIFFERENCE() sonucu 4 ise ama karşılaştırdığın metinler farklıysa, temizlemen gereken veriyi bulmuşsun demektir.

Bu egzersiz

SQL Server Veritabanlarında Veri Temizleme

kursunun bir parçasıdır
Kursu Görüntüle

Egzersiz talimatları

  • S1 içinden statistician_name ve statistician_surname sütunlarının benzersiz değerlerini seç.
  • flight_statistics tablosunu S2 olarak, her iki tablodaki ilgili sütunlar arasındaki DIFFERENCE 4 olduğunda benzer sesli ad ve soyadlara göre INNER JOIN ile birleştir.
  • S1 ve S2'de sırasıyla statistician_name ve statistician_surname sütunlarının birbirinden farklı olduğu değerleri filtrele.

Uygulamalı interaktif egzersiz

Bu örnek kodu tamamlayarak bu egzersizi bitirin.

SELECT 
    -- First name and surnames of the statisticians
	DISTINCT S1.___, S1.___
-- Join flight_statistics with itself
FROM ___ S1 INNER JOIN ___ S2 
	-- The DIFFERENCE of the first name and surname has to be equals to 4
	ON ___(S1.___, S2.___) = 4
	AND ___(S1.___, S2.___) = 4
-- The texts of the first name or the texts of the surname have to be different
WHERE S1.___ <> S2.___
	OR S1.___ <> S2.___
Kodu Düzenle ve Çalıştır