İçindekiler
PostgreSQL standartlarını en iyi karşılayan veritabanı motorlarından biridir. ANSI-SQLBuna ek olarak, sorguları gerçekleştirmek için basit kısayollardan, bir SQL ifadesinin sınırlarının aşılmasına izin veren beklenmedik öğelere kadar değişen yeni işlevler ve oluşturucular sunarak daha da ileri gider.Görüntüleme
Çoğu ilişkisel veritabanı gibi, PostgreSQL desteği var Görüntüleme, ancak SQL Server'dan farklı olarak ve MySQL, PostgreSQL'deki görünümler, tür tetikleyicilerin kullanımına başvurmadan otomatik olarak güncellenemez ONUN YERİNE, bu şekilde TRIGGERS kullanımı ile uyum sağlar ve standarda daha yakındır.
Bunun avantajı, görünümler ve bilgileri sağlayan tabloların güncellenme şekli üzerinde daha fazla kontrol sağlamamıza izin vermesidir.
Aşağıdaki resimde bir görünümün nasıl oluşturulacağına dair bir örnek görelim. PostgreSQL özel özelliklerini kullanarak:
Konuya daha yakından bakabilmemiz için örnek görselin numaralı noktalarını açıklayalım.
- Silme işlemini talimatla gerçekleştirin SİLMEK, yalnızca eski kayıtla aynı anahtara karşılık gelen kaydı siler.
- Veri girişlerini işler.
- Yalnızca tablo sütunlarından en az biri varsa güncelleyin gerçekler Değiştirildi.
- Güncellemeleri yönetin, YENİ veya yeni kayıttaki verilerle hangi kayıtların silineceğini veya güncelleneceğini belirlemek için ESKİ veya eski kaydı kullanın.
HER SATIR İÇİN census.vw_facts ÜZERİNE EKLEME VEYA GÜNCELLEME VEYA SİLME YERİNE TRIGGER trip_01_vw_facts_ins_upd_del OLUŞTURUN YÜRÜTME PROSEDÜRÜ census.trig_vw_facts_ins_upd_del ();
Bu şekilde viewimiz üzerinde herhangi bir ekleme, değiştirme veya silme yaptığımızda onu oluşturan tablolar verileri alacak, örnek bir sorgu görelim:
GÜNCELLEME census.vw_facts SET yıl = 2012 WHERE yıl = 2011 AND trace_id = '25027761200';
Bize başarılı bir sonuç verecek olan şey: Sorgu başarıyla döndürüldü: 51 satır etkilendi, 21 ms yürütme süresi.
pencere
NS pencereler tarafından desteklenen bir ANSI-SQL standart özelliğidir. PostgreSQL, bu, mevcut kaydın ötesindeki verileri görmemizi ve kullanmamızı sağlar, bu işlevler olmadan yapmamız gerekirdi KATILMAK Y Alt Sorgular veri ve kaynakları çok daha karmaşık bir şekilde elde edebilmek.
Aşağıdaki örnek, değerin elde edilmesinden oluşmaktadır. ortalama Bir tablodaki bir sütunun örneğini aşağıdaki resimde görelim:
AVG fonksiyonu ile gördüğümüz gibi, JOINS ve fonksiyon yapmak zorunda kalmadan tüm alanların değerlerini elde etmemizi sağlıyor. BİTMİŞ bunu bir fonksiyona çevirelim pencere. Bu nedenle, PostgreSQL bu tür bir fonksiyon gördüğünde, sonucu elde etmek için WHERE yan tümcesine uyan tüm satırları tarayacaktır.
Bununla, nasıl yapılacağını biraz daha öğrenebileceğimiz öğreticiyi bitirdik. PostgreSQL standart ANSI-SQL işlevlerini ele alır ve bu işlevlerin kullanışlılığını genişletmek için kendi stilini nasıl eklediğini görür.Bu Eğitimi beğendiniz ve yardım ettiniz mi?Yazara olumlu puan vermek için bu düğmeye basarak yazarı ödüllendirebilirsiniz.