SELECT: Veri Sorgulama

PostgreSQL SELECT: Veri Sorgulama

PostgreSQL SELECT: Veri Sorgulama

SELECT ifadesi, PostgreSQL'de veri sorgulamanın temel taşını oluşturur. Veritabanınızdaki bir veya daha fazla tablodan veri çekmenizi sağlar. Bu öğreticide, yalnızca SELECT ifadesine odaklanacağız ve gelecekteki derslerde daha gelişmiş sorgular için bir temel oluşturacağız.

Temel SELECT Sözdizimi

En basit SELECT ifadesi, belirtilen sütunlardan veriyi sorgular:

SELECT column1, column2, ...
FROM table_name;
  • SELECT: Hangi sütunları sorgulamak istediğinizi belirtir.
  • FROM: Veriyi alacağınız tabloyu belirtir.

Tüm Sütunları Seçme

(Bu sorguları terminalinizde denemek isterseniz, örnek şema kodunu çalıştırmayı unutmayın.)

Bir tablodan tüm sütunları almak için yıldız işareti (*) joker karakterini kullanın:

SELECT * FROM books;

Bu sorgu, books tablosundaki tüm sütunları ve tüm satırları getirir.

Belirli Sütunları Seçme

Sadece belirli sütunlara ihtiyacınız varsa, onları açıkça listeleyin:

SELECT title, author FROM books;

Bu sorgu, books tablosundaki title ve author sütunlarını getirir.

Sütun Takma Adları

Sütun takma adları, sonuç setindeki bir sütunun geçici olarak yeniden adlandırılmasını sağlar ve okunabilirliği artırır:

SELECT title AS book_title, author AS writer FROM books;
  • AS: Bir sütuna takma ad (alias) verir.
  • Sonuç, book_title ve writer olarak etiketlenmiş sütunlar gösterecektir.

Hesaplama Yapma

SELECT ifadesinde doğrudan aritmetik işlemleri gerçekleştirebilirsiniz:

SELECT title, price, price * 0.9 AS discounted_price FROM books;

Bu sorgu, her kitabın fiyatında %10 indirim hesaplar.

Metin Birleştirme

Birden fazla sütunu birleştirmek veya metin eklemek için birleştirme operatörünü (||) kullanın:

SELECT 'Title: ' || title || ', Author: ' || author AS book_info FROM books;

Bu sorgu, kitap başlıkları ve yazarlarıyla birleştirilmiş bir metin oluşturur.

Yerleşik Fonksiyonları Kullanma

PostgreSQL, SELECT ifadesinde kullanılabilecek çeşitli fonksiyonlar sunar:

  • String Fonksiyonları: Metin verilerini düzenler.
  • Tarih/Zaman Fonksiyonları: Tarih ve zaman değerleri ile çalışır.
  • Matematiksel Fonksiyonlar: Matematiksel hesaplamalar yapar.

Örnek:

SELECT UPPER(title) AS uppercase_title FROM books;

Bu sorgu, tüm kitap başlıklarını büyük harfe dönüştürür.

Sabit Değerler Seçme

Bir tabloya başvurmadan sabit değerleri de seçebilirsiniz:

SELECT 'Hello, PostgreSQL!';

Bu sorgu, Hello, PostgreSQL! metni içeren bir satır döndürür.

İfadeleri Seçme

SELECT ifadesinde ifadeleri değerlendirebilirsiniz:

SELECT 7 * 3 AS result;

Bu sorgu, 21 değerini döndüren bir satır getirir.

Sonuç Sütunlarının Sırasını Belirlemek

SELECT ifadesinde sütunların sırası, sonuç setindeki sıralarını belirler:

SELECT author, title FROM books;

Bu sorgu, önce author, ardından title sütunlarını görüntüler.

Birden Fazla Tablodan Seçme (Kartezyen Çarpım)

Burada JOIN’lere değinmeyeceğiz, ancak Kartezyen çarpım elde etmek için birden fazla tablodan veri seçebilirsiniz:

SELECT * FROM books, authors;

Not: Bu, books tablosundaki her satırı, authors tablosundaki her satırla birleştirecektir, bu da büyük bir satır sayısıyla sonuçlanabilir.

Sonuçları FETCH FIRST ile Sınırlamak

Bir WHERE ifadesi olmasa bile, döndürülen satır sayısını sınırlayabilirsiniz:

SELECT * FROM books
FETCH FIRST 5 ROWS ONLY;

Bu sorgu, books tablosundan ilk beş satırı getirir.

Özet

SELECT ifadesi, PostgreSQL'de veri sorgulama için birincil araçtır. Temel kullanımını öğrenerek, daha karmaşık sorgular oluşturmanın temelini atarsınız.

Hatırlanması gereken önemli noktalar:

  • SELECT * ile bir tablodan tüm sütunları sorgulayabilirsiniz.
  • Sadece ihtiyacınız olan sütunları almak için belirli sütunları belirtin.
  • Sonuç setlerinizi daha okunabilir hale getirmek için sütun takma adları kullanın.
  • SELECT ifadesinde hesaplamalar yapabilir ve fonksiyonlar kullanabilirsiniz.
  • Sorgularınıza metin birleştirme ve sabit değerler ekleyin.

Gelecek derslerde, verilerinizi daha fazla filtrelemek ve işlemek için WHERE, JOIN ve ORDER BY gibi ek ifadeleri keşfedeceğiz.


PostgreSQL kullanarak veri sorgulamada ustalaşmak için SELECT ifadesi ile alıştırma yapmaya devam edin.

Örnek Şema Kodu

-- books tablosunu oluştur
CREATE TABLE books (
    title VARCHAR(255),
    author VARCHAR(255),
    price NUMERIC(10, 2),
    pages INTEGER
);
 
-- books tablosuna örnek veri ekleyelim
INSERT INTO books (title, author, price, pages) VALUES
('The Great Gatsby', 'F. Scott Fitzgerald', 10.99, 180),
('To Kill a Mockingbird', 'Harper Lee', 7.99, 281),
('1984', 'George Orwell', 8.99, 328),
('Pride and Prejudice', 'Jane Austen', 6.99, 279),
('The Catcher in the Rye', 'J.D. Salinger', 9.99, 214),
('Moby-Dick', 'Herman Melville', 11.99, 635),
('War and Peace', 'Leo Tolstoy', 12.99, 1225);
 
-- authors tablosunu oluştur
CREATE TABLE authors (
    name VARCHAR(255)
);
 
-- authors tablosuna örnek veri ekleyelim
INSERT INTO authors (name) VALUES
('F. Scott Fitzgerald'),
('Harper Lee'),
('George Orwell'),
('Jane Austen'),
('J.D. Salinger'),
('Herman Melville'),
('Leo Tolstoy');
 
-- movies tablosunu oluştur
CREATE TABLE movies (
    title VARCHAR(255)
);
 
-- movies tablosuna örnek veri ekleyelim
INSERT INTO movies (title) VALUES
('The Shawshank Redemption'),
('The Godfather'),
('The Dark Knight'),
('Pulp Fiction'),
('The Lord of the Rings');
 
-- İsteğe bağlı: Veri eklemenin düzgün yapıldığını kontrol edin
SELECT * FROM books;
SELECT * FROM authors;
SELECT * FROM movies;