PostgreSQL Nedir?

İkbal Hükümdar
6 min readApr 12, 2023

--

Herkese merhabalar , bugün PostgreSQL nedir, veritabanı nasıl oluşturulur, tablo nasıl oluşturulur , basit sorgularla beraber anlatmaya çalıştım. Keyifli okumalar dilerim.

PostgreSQL, hem ilişkisel (SQL) hem de ilişkisel olmayan (JSON) sorgulamayı destekleyen açık kaynaklı, kurumsal sınıf ve gelişmiş bir nesne-ilişkisel veri tabanı sistemidir. SQL dilini, karmaşık veri iş yüklerini yüksek verimlilikle işlemesini sağlayan ek özelliklerle kullanır ve genişletir. PostgreSQL, açık kaynak topluluğu tarafından 20 yılı aşkın bir süredir geliştirilerek desteklenen oldukça kararlı bir veritabanıdır.PostgreSQL, birçok web uygulamasının yanı sıra mobil ve analitik uygulamaları için birincil veritabanı olarak kullanılır.

PostgreSQL’in Kısa Tarihi

Proje orijinal olarak, yine Berkeley’de geliştirilen eski Ingres veri tabanına atıfta bulunularak POSTGRES olarak adlandırıldı. POSTGRES projesinin amacı, çoklu veri türlerini desteklemek için gereken minimum özellikleri eklemekti.1996'da POSTGRES projesi, SQL desteğini açıkça göstermek için PostgreSQL olarak yeniden adlandırıldı. Bugün, PostgreSQL genellikle Postgres olarak kısaltılır. O zamandan beri, özel bir katkıda bulunanlar topluluğu olan PostgreSQL Küresel Geliştirme Grubu, açık kaynaklı ve ücretsiz veritabanı projesinin sürümlerini çıkarmaya devam ediyor. Başlangıçta PostgreSQL, UNIX benzeri platformlarda çalışacak şekilde tasarlanmıştır. Ardından PostgreSQL, Windows, macOS ve Solaris gibi çeşitli platformlarda çalışacak şekilde geliştirildi.

PostgreSQL’in Avantajları Nelerdir?

→Ekonomiktir, lisans ücreti yoktur, size üretici bağımsızlığı sağlar.

→ Platform bağımsızdır.

→ Yüksek güvenliklidir. Yüksek erişilebilirliklidir.

→Genişleyebilir mimariye sahiptir. Her işlem ve veri büyüklüğüne göre ölçeklenebilir, esnektir, genişleyebilir veya daraltılabilir.

→Öğrenmesi ve kurması kolaydır. Güncel, detaylı, herkese açık ve erişimi kolay yaygın dokümantasyonu vardır

→Coğrafi veri yapılarını ve yeni NoSQL yapısal olmayan veri türlerini (JSON, JSONB, XML, vb.) destekler.

→PostgreSQL’in çok gelişmiş bir sorgu planlayıcısı vardır

→Hata yapmaya engel olan güvenli bir yapısı vardır.

→Kaynak kodu kullanılarak özelleşmiş açık veya kapalı kodlu çözümler geliştirilebilir.

Şimdi PostgreSQL kurulumuna geçelim.

PostgreSQl’i indirmek için https://www.postgresql.org/download/ adresine gidip bilgisayarınızın işletim sistemine uygun olanı seçip kurabilirsiniz . Ben Windows işletim sistemine kurdum. İndirdikten sonra, bulmak için arama çubuğuna postgre yazdım, ancak PGAdmin adlı GUI aracıyla indirildiği için bulamadım. Postgres veritabanını ve hizmetlerini yönetmek için PGAdmin kullanılır.

1. Database oluşturmak için;

Databases yazan yere sağ click yaptığınızda yeni create database oluşturabilirsiniz. Ben Db1 database oluşturdum.

2. Tablo oluşturmak için;

Öncelikle Db1 databasemiz üzerinde Schemas →Tables olan yere sağ click +create table diyerek tablo oluşturalım.

Ayrıca sorgular için kullanacağımız sol üstte ki Tools seçeneğine tıklayarak Query Tool seçeneğini seçerek şu şekilde oluşturabiliriz.

Şu an ogrenci adında boş bir tablo oluşturdum. Ve kolonları da id , ad , soyad , bolum den oluşmaktadır . Kolonları tabloya sağ click →Properties →Columns diyerek de oluşturabiliriz.

3.Veri eklemek için;

INSERT INTO deyimi ile tabloya bazı kayıtlar ekleyelim;

SELECT ifadesi ile tabloya eklediğimiz kayıtları görelim;

Bu kısma tek tek veri girişlerimizi manuel olarak yapabiliriz.

Kayıt olarak eklendi.

4. DELETE ile tablodan veri silme ;

Kayıt silindi.

5. UPDATE ile veri id güncelleme;

id =1 olan verinin adı güncellendi.

6. ORDER BY ile sıralamak için;

ORDER BY kullanmadan birkaç veri daha eklenmiş ekran görüntüsü

ORDER BY kullanarak ada göre sıralamasını istersek öğrenci isimlerini alfabetik olarak sıraladı.

7.LIMIT kullanımı;

LIMIT öğrenci tablosunda id sıralamasına göre belirtilen ilk iki veriyi listeledi.

8. LIMIT-OFFSET kullanımı

LIMIT-OFFSET ile sorgu gerçekleştirmeden önceki veri listelenmesi

OFFSET ilk satırı almayıp sonraki LIMIT iki satırı listeledi.

9. BETWEEN kullanımı

BETWEEN komutu 2 ve 4 aralığındaki(2 ve 4 dahil) idleri listeledi.

10. IN kullanımı

IN komutu ile verilen liste içinde adı belirtilen kişilerin bilgileri listelendi

11. GROUP BY kullanımı

GROUP BY ,Select komutu ile listelenen sonuçları istenilen kolona göre gruplandırmayı sağlar. Birkaç veri ekleyip öyle GROUP BY kullandım

12. CROSS JOIN kullanımı

ders adında yeni bir tablo oluşturup veri ekledim .

ders tablosu ve verileri :

Şimdi CROSS JOIN ile tabloların kartezyen çarpımını yapalım

13. INNER JOIN kullanımı

INNER JOIN ile ogrenci tablosundan id ad ve bolum kolonlarının, ders tablosundan da derskodu , dersadı ve ders kredisini listelenmesi gerçekleşti.

14.LEFT JOIN kullanımı

Önce ogrenci tablosuna göre left join yaptığımızda ogrenci tablosunda olup ders tablosuna kayıtlı olmayan öğrenci olduğu için ders tablosu null değerlerini aldı .

Şimdi ders tablosuna göre left join yaparsak satırlar tam eşleşir çünkü ders tablosuna kayıtlı tüm öğrenciler öğrenci tablosunda da kayıtlı.

15. RIGHT JOIN kullanımı

Önce ders tablosuna göre right join yaptığımızda derslere kayıtlı her öğrenci, ogrenci tablosunda da kayıtlı olduğu için satırlar tam eşleşir.

Şimdi ogrenci tablosuna göre right join yaparsak satırlar tam eşleşmez .Çünkü ogrenci tablosundaki her öğrenci ders tablosuna kayıtlı değil ve ders tablosu null değerlerini alır.

16. FULL JOIN kullanımı

Tabloların her bir satırından birer tane bulunur. Belirtilen şarta uymayan değerlerin yerine iki tablo içinde NULL eklenir.

Yazımı incelediğiniz için teşekkürler.

--

--