SQL Temellerine Giriş

Yapılandırılmış Sorgu Dili (SQL), modern veritabanı mimarisinin temel yapı taşlarından biridir. SQL, tüm büyük platformlarda ilişkisel veritabanları oluşturmak ve işlemek için kullanılan yöntemleri tanımlar. İlk bakışta, dil korkutucu ve karmaşık görünebilir, ancak bu o kadar da zor değil.

SQL hakkında

SQL'in doğru telaffuzu, veritabanı topluluğu içinde tartışmalı bir konudur. Amerikan Ulusal Standartlar Enstitüsü, SQL standardında resmi telaffuzun "es kuyruğu" olduğunu açıkladı. el." Bununla birlikte, birçok veritabanı uzmanı "sequel" argo telaffuzunu benimsemiştir. nın-nin GIF, doğru cevap yok.

SQL'in birçok çeşidi vardır. Oracle veritabanları, tescilli PL/SQL'i kullanır. Microsoft SQL Server, Transact-SQL'i kullanır. Tüm varyasyonlar, endüstri standardı ANSI SQL'e dayanmaktadır.

Bu tanıtım, herhangi bir modern ilişkisel veritabanı sisteminde çalışan ANSI uyumlu SQL komutlarını kullanır.

DDL ve DML

SQL komutları iki ana alt dile ayrılabilir. Veri Tanımlama Dili, veritabanlarını ve veritabanı nesnelerini oluşturmak ve yok etmek için kullanılan komutları içerir. Veritabanı yapısı DDL ile tanımlandıktan sonra, veritabanı yöneticileri ve kullanıcıları, içerdiği verileri eklemek, almak ve değiştirmek için Veri İşleme Dili'ni kullanabilir.

instagram viewer

SQL adı verilen üçüncü bir sözdizimi türünü destekler. Veri Kontrol Dili. DCL, veritabanı içindeki nesnelere güvenlik erişimini yönetir. Örneğin, bir DCL komut dosyası belirli kullanıcı hesaplarına veritabanının bir veya daha fazla tanımlanmış alanı içindeki tabloları okuma veya yazma hakkı verir veya iptal eder. Yönetilen çok kullanıcılı ortamların çoğunda, veritabanı yöneticileri genellikle DCL komut dosyalarını yürütür.

Veri Tanımlama Dili Komutları

Veri Tanımlama Dili, veritabanlarını ve veritabanı nesnelerini oluşturmak ve yok etmek için kullanılır. Bu komutlar, öncelikle bir veritabanı projesinin kurulum ve kaldırma aşamalarında veritabanı yöneticileri tarafından kullanılır. DDL dört ana komut etrafında döner—oluşturmak, kullanmak, değiştirmek, ve düşürmek.

Oluşturmak

oluşturmak komut, platformunuzda veritabanları, tablolar veya sorgular oluşturur. Örneğin, komut:

CREATE DATABASE çalışanları;

adlı boş bir veritabanı oluşturur çalışanlar DBMS'nizde. Veritabanını oluşturduktan sonraki adım, veri içeren tablolar oluşturmaktır. Diğer bir varyantı oluşturmak komutu bu amacı gerçekleştirir. Komuta:

CREATE TABLE kişisel_bilgisi (ad_adı karakter (20) boş değil, soyadı karakter (20) boş değil, çalışan_kimliği int boş değil);

başlıklı bir tablo oluşturur. kişisel bilgi mevcut veritabanında. Örnekte, tablo üç nitelik içerir: İsim, Soyadı, ve Çalışan kimliği bazı ek bilgilerle birlikte.

kullanın

kullanmak komutu aktif veritabanını belirtir. Örneğin, şu anda satış veritabanında çalışıyorsanız ve çalışan veritabanını etkileyecek bazı komutlar vermek istiyorsanız, bunlara aşağıdaki SQL komutuyla başlayın:

KULLANIM çalışanları;

Verileri işleyen SQL komutları vermeden önce çalıştığınız veritabanını iki kez kontrol edin.

değiştir

Bir veritabanı içinde bir tablo oluşturduktan sonra tanımını şu şekilde değiştirin: değiştirmek Bir tablonun yapısını silmeden ve yeniden oluşturmadan değiştiren komut. Aşağıdaki komuta bir göz atın:

ALTER TABLE kişisel_bilgi ADD maaş parası null;

Bu örnek, personal_info tablosuna bir çalışanın maaşı olan yeni bir öznitelik ekler. para argümanı, bir çalışanın maaşının dolar ve sent biçimini kullanarak depolandığını belirtir. Son olarak, boş anahtar kelime, veritabanına, bu alanın herhangi bir çalışan için hiçbir değer içermemesinin uygun olduğunu söyler.

Düşürmek

Veri Tanımlama Dilinin son komutu, düşürmek, tüm veritabanı nesnelerini DBMS'mizden kaldırır. Örneğin oluşturduğumuz personal_info tablosunu kalıcı olarak kaldırmak için aşağıdaki komutu kullanın:

DROP TABLE kişisel_bilgi;

Benzer şekilde, tüm çalışan veritabanını kaldırmak için aşağıdaki komut kullanılacaktır:

DROP DATABASE çalışanları;

Bu komutu dikkatli kullanın. düşürmek komutu, tüm veri yapılarını veritabanınızdan kaldırır. Tek tek kayıtları kaldırmak istiyorsanız, silmek Veri Manipülasyon Dilinin komutu.

Veri Manipülasyon Dil Komutları

Veri İşleme Dili, veritabanı bilgilerini almak, eklemek ve değiştirmek için kullanılır. Bu DML komutları, veritabanıyla rutin olarak etkileşim kurmak için tipik bir çerçeve sunar.

Ekle

eklemek komutu, mevcut bir tabloya kayıt ekler. Önceki bölümdeki kişisel bilgi örneğine dönersek, İK departmanımızın veri tabanına yeni bir çalışan eklemesi gerektiğini hayal edin. Buna benzer bir komut kullanın:

EKLE kişisel_bilgi
değerler('bart','simpson',12345,45000$);

Kayıt için belirtilen dört değer olduğunu unutmayın. Bunlar, tanımlandıkları sırayla tablo özelliklerine karşılık gelir: İsim, Soyadı, Çalışan kimliği ve maaş.

Seç

seç komut, SQL'de en sık kullanılan komuttur. Operasyonel bir veri tabanından belirli bilgileri alır. Yine çalışan veri tabanındaki personal_info tablosunu kullanarak birkaç örneğe bir göz atın.

Aşağıda gösterilen komut, kişisel_bilgi tablosunda yer alan tüm bilgileri alır. Yıldız işareti, SQL'de bir joker karakterdir.

SEÇ *
kişisel_bilgiden;

Alternatif olarak, aşağıdakileri belirterek veritabanından alınan öznitelikleri sınırlayın. ne seçilmiş olur. Örneğin, İnsan Kaynakları departmanı, şirketteki tüm çalışanların soyadlarının bir listesini isteyebilir. Aşağıdaki SQL komutu yalnızca bu bilgileri alır:

soyadını SEÇ
kişisel_bilgiden;

nerede yan tümcesi, alınan kayıtları belirtilen ölçütleri karşılayanlarla sınırlar. CEO, tüm yüksek ücretli çalışanların personel kayıtlarını gözden geçirmek isteyebilir. Aşağıdaki komut, maaş değeri 50.000 ABD Dolarından fazla olan kayıtlar için kişisel bilgi içinde yer alan tüm verileri alır:

SEÇ *
Personal_info'dan
NEREDE maaş > 50000 $;

Güncelleme

Güncelleme komutu, bir tabloda bulunan bilgileri toplu olarak veya tek tek değiştirir. Şirketin tüm çalışanlarına yıllık maaşlarında yüzde 3'lük bir yaşam maliyeti artışı sağladığını varsayalım. Aşağıdaki SQL komutu, bu çarpmayı veritabanında depolanan tüm çalışanlara uygular:

GÜNCELLEME kişisel bilgi
SET maaş = maaş * 1.03;

Yeni çalışan Bart Simpson, görev çağrısının üzerinde ve ötesinde bir performans gösterdiğinde, yönetim, yıldız başarılarını 5.000 dolarlık bir artışla takdir etmek istiyor. WHERE maddesi, bu zam için Bart'ı seçiyor:

GÜNCELLEME kişisel bilgi
SET maaş = maaş + 5000
NEREDE çalışan_kimliği = 12345;

Sil

Son olarak, şuna bir göz atalım silmek komut. Bu komutun sözdiziminin diğer DML komutlarının sözdizimine benzer olduğunu göreceksiniz. DELETE komutu, bir nerede yan tümcesi, bir tablodan bir kaydı kaldırın:

Personal_info'DAN SİL
NEREDE çalışan_kimliği = 12345;

DML, toplama alanlarını da destekler. İçinde seç ifadesi, matematiksel operatörler gibi toplam ve Miktar bir sorgu içindeki verileri özetler. Örneğin, sorgu:

personal_info'dan count(*) öğesini seçin;

tablodaki kayıt sayısını sayar.

Veritabanı Birleşimleri

bir katılmak ifadesi, büyük miktarda veriyi verimli bir şekilde işlemek için verileri birkaç tabloda birleştirir. Bu ifadeler, bir veritabanının gerçek gücünün bulunduğu yerdir.

Temel kullanımı keşfetmek için katılmak iki tablodaki verileri birleştirme işlemi, kişisel_bilgi tablosunu kullanarak örnekle devam edin ve karışıma ek bir tablo ekleyin. adlı bir tablonuz olduğunu varsayalım. disiplin eylemi aşağıdaki ifadeyle oluşturuldu:

CREATE TABLE disiplin_eylem (action_id int boş değil, çalışan_id int boş değil, yorum karakter (500));

Bu tablo, şirket çalışanları için disiplin cezalarının sonuçlarını içerir. Çalışan numarası dışında çalışan hakkında herhangi bir bilgi içermez.

40.000 dolardan fazla maaşı olan tüm çalışanlara karşı alınan disiplin cezalarını listeleyen bir rapor oluşturmakla görevlendirildiğinizi varsayalım. Bu durumda JOIN işleminin kullanımı basittir. Aşağıdaki komutu kullanarak bu bilgileri alın:

Kişisel_bilgi.ilk_adı, kişisel_bilgi.son_adı, disiplin_eylem.yorumlarını SEÇ
FROM personal_info INNER KATIL disiplin_action ON personal_info.employee_id = disiplin_action.employee_id
NEREDE kişisel_bilgi.maaş > 40000;

Birleşim Türleri

SQL'de Birleştirme Türleri

Birleştirmeler çeşitli tatlarda gelir. SQL deyiminde, ilk tablo (genellikle Tablo A ya da Sol Masa) ikinci tabloya katılır (genellikle Tablo B ya da Sağ Masa) pozisyon farkında bir şekilde. Bu nedenle, join deyiminde tabloların sırasını değiştirirseniz, işlemin sonuçları farklı olacaktır. Başlıca birleştirme türleri şunları içerir:

  • İç birleşim: Yalnızca üzerinde koşul, her iki tablodaki aynı kayıtlarla eşleşir.
  • Dış Birleştirme: Yalnızca her iki tablodaki kayıtlarla eşleşir. hariç tutmak bölümünde tanımlanan sonuçlar üzerinde şart.
  • Sağ Katıl: Tablo B'deki tüm kayıtları ve Tablo A'daki kayıtlarla eşleşen kayıtlarla eşleşir. üzerinde şart.
  • Sol yönden katılım: Tablo A'daki tüm kayıtları ve Tablo B'deki üzerinde şart.
  • Çapraz Birleştirme: Tablolar aynıymış gibi tüm kayıtları eşleştirir. Bu süreç denilen bir şey üretir Kartezyen ürün. Çoğu zaman, çapraz birleştirmeler hoş karşılanmaz, çünkü bunlar Tablo A'nın her satırıyla, Tablo B'nin her satırıyla ayrı ayrı eşleşir. Bu nedenle, Tablo A beş kayıt ve Tablo B 9 kayıt sunmuşsa, çapraz birleştirme sorgusu 45 sonuç satırı sunar.
instagram story viewer