psql -U kullanıcı_adı -d veritabanı_adı
l
dt
d tablo_adı
q
CREATE DATABASE veritabani_adı;
DROP DATABASE veritabani_adı;
ALTER DATABASE eski_ad RENAME TO yeni_ad;
CREATE TABLE tablo_adı (
sütun1 veri_tipi1 kısıtlamalar,
sütun2 veri_tipi2 kısıtlamalar,
...
);
Örnek:
CREATE TABLE calisanlar (
id SERIAL PRIMARY KEY,
ad VARCHAR(50) NOT NULL,
soyad VARCHAR(50) NOT NULL,
eposta VARCHAR(100) UNIQUE,
işe_giriş_tarihi DATE,
maas NUMERIC(10, 2)
);
-- Bir sütun ekle
ALTER TABLE tablo_adı ADD COLUMN sütun_adı veri_tipi;
-- Bir sütunu sil
ALTER TABLE tablo_adı DROP COLUMN sütun_adı;
-- Bir sütunun adını değiştir
ALTER TABLE tablo_adı RENAME COLUMN eski_ad TO yeni_ad;
-- Sütun veri tipini değiştir
ALTER TABLE tablo_adı ALTER COLUMN sütun_adı TYPE yeni_veri_tipi;
DROP TABLE tablo_adı;
INSERT INTO tablo_adı (sütun1, sütun2, ...)
VALUES (değer1, değer2, ...);
Örnek:
INSERT INTO calisanlar (ad, soyad, eposta, işe_giriş_tarihi, maas)
VALUES ('John', 'Doe', 'john.doe@example.com', '2023-01-15', 50000.00);
UPDATE tablo_adı
SET sütun1 = değer1, sütun2 = değer2, ...
WHERE koşul;
Örnek:
UPDATE calisanlar
SET maas = 55000.00
WHERE id = 1;
DELETE FROM tablo_adı
WHERE koşul;
Örnek:
DELETE FROM calisanlar
WHERE id = 1;
SELECT sütun1, sütun2, ...
FROM tablo_adı
WHERE koşul;
Örnek:
SELECT ad, soyad, maas
FROM calisanlar
WHERE maas > 50000;
SELECT sütun1, sütun2, ...
FROM tablo_adı
ORDER BY sütun1 [ASC|DESC], sütun2 [ASC|DESC], ...;
Örnek:
SELECT ad, soyad, maas
FROM calisanlar
ORDER BY maas DESC, soyad ASC;
SELECT sütun1, sütun2, ...
FROM tablo_adı
LIMIT satır_sayısı OFFSET başlangıç_satırı;
Örnek:
SELECT *
FROM calisanlar
LIMIT 10 OFFSET 20;
SELECT DISTINCT sütun1, sütun2, ...
FROM tablo_adı;
Örnek:
SELECT DISTINCT departman
FROM calisanlar;
SELECT sütun1, sütun2, ...
FROM tablo1
INNER JOIN tablo2 ON tablo1.sütun_adı = tablo2.sütun_adı;
Örnek:
SELECT calisanlar.ad, calisanlar.soyad, departmanlar.ad
FROM calisanlar
INNER JOIN departmanlar ON calisanlar.departman_id = departmanlar.id;
SELECT sütun1, sütun2, ...
FROM tablo1
LEFT JOIN tablo2 ON tablo1.sütun_adı = tablo2.sütun_adı;
SELECT sütun1, sütun2, ...
FROM tablo1
RIGHT JOIN tablo2 ON tablo1.sütun_adı = tablo2.sütun_adı;
SELECT sütun1, sütun2, ...
FROM tablo1
FULL OUTER JOIN tablo2 ON tablo1.sütun_adı = tablo2.sütun_adı;
SELECT COUNT(sütun_adı)
FROM tablo_adı
WHERE koşul;
Örnek:
SELECT COUNT(*) as toplam_calisan
FROM calisanlar;
SELECT SUM(sütun_adı)
FROM tablo_adı
WHERE koşul;
Örnek:
SELECT SUM(maas) as toplam_maas
FROM calisanlar;
SELECT AVG(sütun_adı)
FROM tablo_adı
WHERE koşul;
SELECT MIN(sütun_adı), MAX(sütun_adı)
FROM tablo_adı
WHERE koşul;
SELECT sütun1, toplama_fonksiyonu(sütun2)
FROM tablo_adı
GROUP BY sütun1;
Örnek:
SELECT departman, AVG(maas) as ortalama_maas
FROM calisanlar
GROUP BY departman;
SELECT sütun1, toplama_fonksiyonu(sütun2)
FROM tablo_adı
GROUP BY sütun1
HAVING koşul;
Örnek:
SELECT departman, AVG(maas) as ortalama_maas
FROM calisanlar
GROUP BY departman
HAVING AVG(maas) > 50000;
CREATE INDEX indeks_adı
ON tablo_adı (sütun1, sütun2, ...);
Örnek:
CREATE INDEX idx_soyad
ON calisanlar (soyad);
CREATE UNIQUE INDEX indeks_adı
ON tablo_adı (sütun1, sütun2, ...);
DROP INDEX indeks_adı;
BEGIN;
COMMIT;
ROLLBACK;
CREATE VIEW görünüm_adı AS
SELECT sütun1, sütun2, ...
FROM tablo_adı
WHERE koşul;
Örnek:
CREATE VIEW calisan_gorunumu AS
SELECT ad, soyad, maas
FROM calisanlar
WHERE maas > 50000;
DROP VIEW görünüm_adı;
CREATE FUNCTION fonksiyon_adı(parametreler) RETURNS veri_tipi AS $$
BEGIN
-- Fonksiyonun içeriği
END;
$$ LANGUAGE plpgsql;
SELECT fonksiyon_adı(parametreler);
CREATE PROCEDURE prosedur_adı(parametreler)
LANGUAGE plpgsql
AS $$
BEGIN
-- Prosedürün içeriği
END;
$$;
CALL prosedur_adı(parametreler);
CREATE TRIGGER tetikleyici_adı
AFTER INSERT ON tablo_adı
FOR EACH ROW
EXECUTE FUNCTION fonksiyon_adı();
DROP TRIGGER tetikleyici_adı ON tablo_adı;
CREATE USER kullanıcı_adı WITH PASSWORD 'şifre';
GRANT yetki ON tablo_adı TO kullanıcı_adı;
DROP USER kullanıcı_adı;
pg_dump veritabani_adı > yedekleme_dosyası.sql
psql veritabani_adı < yedekleme_dosyası.sql
ANALYZE tablo_adı;
VACUUM FULL;
2024 © Tüm hakları saklıdır - buraxta.com