UNION ve UNION ALL
Coddy'nin SQL Journey'sinin Temellerin Ötesi bölümünün bir parçası — ders 16 / 27.
UNION ile Temeller bölümünde tanışmıştınız: iki sonuç kümesini birbiri üzerine yığar. Varsayılan olarak, ek bir sıralama maliyetine yol açan yinelenenleri kaldırma işlemini de gerçekleştirir.
SELECT name FROM authors
UNION
SELECT name FROM editorsUNION ALL aynı yığınlama işlemini yapar ancak yinelenenleri korur. Daha hızlıdır ve iki tarafın aynı satırı üretemeyeceğini bildiğinizde veya her bir oluşumu gerçekten saymak istediğinizde neredeyse her zaman istediğiniz şeydir.
SELECT name FROM authors
UNION ALL
SELECT name FROM editorsHer iki taraf da aynı sayıda sütunu, aynı sırada ve uyumlu türlerle döndürmelidir.
Görev
KolayMevcut tablolar ve sütunlar:
<strong>online_orders</strong>:<strong>order_no</strong>,<strong>amount</strong><strong>retail_orders</strong>:<strong>ticket_no</strong>,<strong>total</strong>
İki tablo, farklı sütun adlarıyla farklı kanallardan gelen siparişleri takip eder. Şu sütunlara sahip tüm siparişlerin birleştirilmiş tek bir listesini döndürün:
channel:'online'veya'retail'order_id: online tablosundanorder_no, retail tablosundanticket_noamount: siparişin toplamı (amountveyatotalsütunundan)
Her satırı koruyun (tekrarları kaldırmayın). amount sütununa göre azalan düzende sıralayın.
Kopya kağıdı
UNION iki sonuç kümesini üst üste ekler ve yinelenenleri kaldırır (daha yavaştır). UNION ALL üst üste ekler ve yinelenenleri korur (daha hızlıdır):
SELECT name FROM authors
UNION ALL
SELECT name FROM editorsHer iki taraf da aynı sırada ve uyumlu türlerde, aynı sayıda sütuna sahip olmalıdır. Sütun adları ilk SELECT ifadesinden gelir.
Kendin dene
-- aynı 3 sütuna hizalanmış, UNION ALL ile birleştirilmiş iki SELECT
Bu ders kısa bir quiz içerir. Soruları yanıtlamak ve ilerlemeni kaydetmek için derse başla.
Temellerin Ötesi bölümündeki tüm dersler
2String Fonksiyonları
LENGTH, UPPER, LOWERSUBSTRINSTRREPLACE ve TRIM|| ile BirleştirmeÖzet - Faturalar