Neden Oracle SQL?
Oracle Database, dünya çapında en çok kullanılan kurumsal veritabanı sistemlerinden biridir. Bankalar, telekom şirketleri, devlet kurumları ve büyük e-ticaret platformları Oracle kullanmaktadır. Bu yaygın kullanım, Oracle SQL bilen profesyonellere olan talebi sürekli yüksek tutmaktadır.
Oracle SQL öğrenmek, teknoloji sektöründe yüksek gelir elde etmenin en garantili yollarından biridir. Giriş seviyesinde bile aylık 50,000-70,000 TL, deneyimli uzmanlar ise 150,000 TL'nin üzerinde kazanç sağlayabilmektedir.
Para Kazanma Yöntemleri
1. Tam Zamanlı İş Pozisyonları
Junior SQL Developer (0-2 Yıl Deneyim)
- Aylık Maaş: 50,000 - 70,000 TL
- İş Tanımı: Temel SQL sorguları yazma, rapor hazırlama, veri analizi
-- Junior seviye örnek sorgu
SELECT
c.customer_name,
COUNT(o.order_id) as total_orders,
SUM(o.amount) as total_spent
FROM customers c
LEFT JOIN orders o ON c.customer_id = o.customer_id
WHERE o.order_date >= ADD_MONTHS(SYSDATE, -12)
GROUP BY c.customer_name
HAVING SUM(o.amount) > 10000
ORDER BY total_spent DESC;
Oracle Database Developer (2-4 Yıl Deneyim)
- Aylık Maaş: 80,000 - 110,000 TL
- İş Tanımı: PL/SQL geliştirme, stored procedure yazma, veritabanı tasarımı
-- Mid-level PL/SQL örneği
CREATE OR REPLACE PROCEDURE calculate_commission (
p_employee_id IN NUMBER,
p_month IN DATE,
p_commission OUT NUMBER
)
IS
v_sales_total NUMBER;
v_rate NUMBER := 0.05;
BEGIN
SELECT SUM(amount)
INTO v_sales_total
FROM sales
WHERE employee_id = p_employee_id
AND TRUNC(sale_date, 'MM') = TRUNC(p_month, 'MM');
p_commission := v_sales_total * v_rate;
INSERT INTO commission_log (employee_id, month, commission, calc_date)
VALUES (p_employee_id, p_month, p_commission, SYSDATE);
COMMIT;
EXCEPTION
WHEN NO_DATA_FOUND THEN
p_commission := 0;
WHEN OTHERS THEN
ROLLBACK;
RAISE;
END;
/
Senior Oracle DBA (5+ Yıl Deneyim)
- Aylık Maaş: 120,000 - 180,000 TL
- İş Tanımı: Veritabanı optimizasyonu, güvenlik, backup stratejileri
-- Senior seviye performans optimizasyonu
-- Yavaş sorguların tespiti
SELECT
sql_id,
sql_text,
elapsed_time/1000000 as elapsed_seconds,
executions,
ROUND(elapsed_time/executions/1000000, 2) as avg_seconds
FROM v$sql
WHERE elapsed_time > 10000000
AND executions > 0
ORDER BY elapsed_time DESC
FETCH FIRST 10 ROWS ONLY;
-- İndeks önerisi
CREATE INDEX idx_sales_emp_date
ON sales(employee_id, sale_date)
TABLESPACE users;
2. Freelance Projeleri
Freelance çalışma, Oracle SQL ile para kazanmanın en esnek yoludur. Popüler platformlar:
- Upwork
- Freelancer
- Bionluk
- Toptal (üst düzey projeler)
Tipik Freelance Proje Örnekleri:
Veri Analizi ve Raporlama Projesi
- Ücret: 10,000 - 25,000 TL
- Süre: 1-2 hafta
- Örnek İş: E-ticaret şirketi için satış analiz raporu
-- Freelance proje örneği: Ürün performans analizi
WITH monthly_sales AS (
SELECT
p.product_id,
p.product_name,
p.category,
TO_CHAR(o.order_date, 'YYYY-MM') as month,
SUM(od.quantity) as units_sold,
SUM(od.quantity * od.price) as revenue
FROM products p
JOIN order_details od ON p.product_id = od.product_id
JOIN orders o ON od.order_id = o.order_id
WHERE o.order_date >= ADD_MONTHS(SYSDATE, -6)
GROUP BY p.product_id, p.product_name, p.category,
TO_CHAR(o.order_date, 'YYYY-MM')
)
SELECT
product_name,
category,
month,
units_sold,
revenue,
LAG(revenue) OVER (PARTITION BY product_id ORDER BY month) as prev_month_revenue,
ROUND(((revenue - LAG(revenue) OVER (PARTITION BY product_id ORDER BY month)) /
LAG(revenue) OVER (PARTITION BY product_id ORDER BY month) * 100), 2) as growth_rate
FROM monthly_sales
ORDER BY product_name, month;
Veritabanı Optimizasyon Projesi
- Ücret: 30,000 - 80,000 TL
- Süre: 3-4 hafta
- Örnek İş: Yavaş çalışan veritabanının performans iyileştirmesi
-- Performans tuning örneği
-- Tablo istatistiklerini güncelleme
BEGIN
DBMS_STATS.GATHER_TABLE_STATS(
ownname => 'SALES_SCHEMA',
tabname => 'ORDERS',
estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE,
method_opt => 'FOR ALL COLUMNS SIZE AUTO',
cascade => TRUE
);
END;
/
-- Partition oluşturma (büyük tablolar için)
CREATE TABLE orders_new (
order_id NUMBER,
customer_id NUMBER,
order_date DATE,
amount NUMBER
)
PARTITION BY RANGE (order_date)
INTERVAL (NUMTOYMINTERVAL(1, 'MONTH'))
(
PARTITION p_start VALUES LESS THAN (DATE '2024-01-01')
);
Migration Projesi
- Ücret: 50,000 - 150,000 TL
- Süre: 2-3 ay
- Örnek İş: MySQL'den Oracle'a veri aktarımı
3. Online Eğitim ve İçerik Üretimi
Udemy Kursları
- Kurs Fiyatı: 200-500 TL
- Potansiyel Öğrenci: 500-5,000 kişi/yıl
- Tahmini Gelir: 50,000 - 1,000,000 TL/yıl
Kurs İçerik Örneği:
- Temel SQL (SELECT, JOIN, WHERE)
- İleri SQL (Window Functions, CTE)
- PL/SQL (Procedures, Functions, Triggers)
- Performans Optimizasyonu
- Gerçek Proje Örnekleri
YouTube Kanalı
- 1000 görüntüleme başına: 20-50 TL
- 10,000 aboneli kanal: Ayda 10,000-30,000 TL
Blog Yazıları
- Medium Partner Program: Makale başına 50-500 dolar
- Sponsorlu içerik: Yazı başına 5,000-20,000 TL
4. Danışmanlık Hizmetleri
Deneyim kazandıktan sonra şirketlere danışmanlık hizmeti sunabilirsiniz:
- Saatlik Ücret: 1,000 - 3,000 TL
- Günlük Ücret: 8,000 - 20,000 TL
- Proje Bazlı: 100,000 - 500,000 TL
Danışmanlık Alanları:
- Veritabanı mimarisi ve tasarımı
- Performans optimizasyonu ve tuning
- Veri güvenliği ve uyumluluk
- Cloud migration stratejileri
- Disaster recovery planlaması
Öğrenme Yol Haritası
Ay 1-2: Temel SQL
-- Temel sorgular
SELECT product_name, price, stock
FROM products
WHERE category = 'Electronics'
AND price BETWEEN 1000 AND 5000
ORDER BY price DESC;
-- Join işlemleri
SELECT
c.customer_name,
o.order_date,
p.product_name,
od.quantity,
od.price
FROM customers c
JOIN orders o ON c.customer_id = o.customer_id
JOIN order_details od ON o.order_id = od.order_id
JOIN products p ON od.product_id = p.product_id;
Ay 3-4: İleri SQL
-- Window Functions
SELECT
employee_name,
department,
salary,
AVG(salary) OVER (PARTITION BY department) as dept_avg,
RANK() OVER (PARTITION BY department ORDER BY salary DESC) as dept_rank
FROM employees;
-- CTE kullanımı
WITH high_value_customers AS (
SELECT customer_id, SUM(amount) as total
FROM orders
GROUP BY customer_id
HAVING SUM(amount) > 50000
)
SELECT c.customer_name, hvc.total
FROM customers c
JOIN high_value_customers hvc ON c.customer_id = hvc.customer_id;
Ay 5-6: PL/SQL
-- Function örneği
CREATE OR REPLACE FUNCTION get_discount(p_amount IN NUMBER)
RETURN NUMBER
IS
v_discount NUMBER;
BEGIN
CASE
WHEN p_amount > 10000 THEN v_discount := 0.15;
WHEN p_amount > 5000 THEN v_discount := 0.10;
WHEN p_amount > 1000 THEN v_discount := 0.05;
ELSE v_discount := 0;
END CASE;
RETURN v_discount;
END;
/
-- Trigger örneği
CREATE OR REPLACE TRIGGER update_stock
AFTER INSERT ON order_details
FOR EACH ROW
BEGIN
UPDATE products
SET stock = stock - :NEW.quantity
WHERE product_id = :NEW.product_id;
END;
/
Başarı için İpuçları
1. Portfolyo Oluşturun
- GitHub'da SQL projeleri paylaşın
- Kaggle'da veri analizi yarışmalarına katılın
- Kendi blog veya YouTube kanalınızı başlatın
2. Sertifikalar Alın
- Oracle Database SQL Certified Associate
- Oracle PL/SQL Developer Certified Professional
- Oracle Database Administrator Certified Professional
Bu sertifikalar maaşınıza %20-40 oranında katkı sağlar.
3. Network Kurun
- LinkedIn'de aktif olun
- Oracle User Group toplantılarına katılın
- Teknik konferanslara gidin
4. Sürekli Öğrenin
- Yeni Oracle versiyonlarını takip edin
- Cloud teknolojilerini öğrenin (Oracle Cloud)
- AI ve Machine Learning entegrasyonunu inceleyin
Gelir Artış Grafiği
İlk 6 Ay: Junior pozisyon - 50,000 TL/ay 1. Yıl: Sertifika + deneyim - 70,000 TL/ay 2. Yıl: Mid-level + freelance - 100,000 TL/ay 3. Yıl: Senior + danışmanlık - 150,000 TL/ay 5. Yıl: Uzman + pasif gelir - 250,000+ TL/ay
Sonuç
Oracle SQL öğrenmek, yüksek gelir potansiyeli sunan bir yatırımdır. Doğru strateji ile 6 ayda para kazanmaya başlayabilir, 2-3 yıl içinde çok iyi bir gelir seviyesine ulaşabilirsiniz. Başarının anahtarı: düzenli pratik, sürekli öğrenme ve edindiğiniz beceriyi gerçek projelerde kullanma fırsatları yakalamaktır.
Bugün başlayın, yarın Oracle SQL uzmanı olarak kariyer fırsatlarınızı değerlendirin!

Yorumlar
Yorum Gönder