Yapısal Sorgulama Dili (SQL)

Ebat: px
Şu sayfadan göstermeyi başlat:

Download "Yapısal Sorgulama Dili (SQL)"

Transkript

1 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 1 Yapısal Sorgulama Dili (SQL) İlişkisel veri tabanı yönetim sistemleri (RDBS) modeli ilk önce 1970 yılında Dr.E. F. Codd tarafından tarif edilmiştir. SQL veya Structured English Query Language (SEQUEL), IBM firması tarafından Codd un modeli kullanılmak için geliştirilmiştir. SEQUEL sonraları SQL olmuştur yılında, Relational Software, SQL in ilk ticari uygulamasını geliştirmiştir. Bugün SQL, ilişkisel veri tabanı yönetim sistemleri standardı olarak kabul edilmektedir. SQL, ilişkisel veri tabanlarındaki bilgileri sorgulamak için kullanılan bir dildir. SQL, tüm kullanıcıların ve uygulamaların veri tabanına erişmek için kullandıkları komutlar bütünüdür. Uygulama programları ve veri tabanı araçları kullanıcılara çoğu durumda SQL kullanmadan veri tabanına erişim imkânını sunmaktadırlar fakat bu uygulamalarda geri planda SQL kullanmaktadırlar. Oracle SQL I, standartlara uygundur. Daha da ötesinde, Oracle, SQL standartlarının gelişmesinde motor güç olan bir kurumdur. American National Standarts Institue (ANSI) ve International Standarts Organization (ISO) tarafından belirlenen son SQL standardı, SQL-92 dir. SQL-92 de üç aşamalı uygunluk vardır, İlk seviye (Entry Level) Orta seviye (Intermediate Level) İleri seviyedir (Full Level) SQL, ilişkisel veri tabanları ile uygulamaların diyalogunu sağlamaktadır. SQL temelde verilerle mantıksal seviyede çalışmaktadır. Yani, bir tablodan birkaç kayıt seçebilmek için, o kayıtları seçebilecek bir koşul belirtilir. Koşula uyan tüm kayıtlar bir basamakta gelir ve bunlar kullanıcıya gösterilebildiği gibi, bir başka SQL e veya uygulamaya da gönderilebilir. Kayıtların tek tek nasıl geldiği ve fiziksel olarak veri tabanının neresinde ve nasıl tutulduğu ile SQL ilgilenmektedir. SQL komutları ile 1. Veri sorgulama 2. Bir tabloya kayıt ekleme, değiştirme ve silme 3. Veri tabanı nesneleri (database objects) yaratma, değiştirme ve silme 4. Veri tabanına ve nesnelerine erişimi kontrol etme 5. Veri tabanı bütünlüğünü ve tutarlılığını sağlama işlemleri yapılabilmektedir. SQL komutları bir veya daha fazla satır olabilmektedir. SQL cümlelerinin sonuna noktalı virgül (;) konmaktadır. Birden fazla satır olan komutlarda en son satırın sonuna / işareti isteğe bağlı olarak konabilmektedir. PL/SQL, Oracle in SQL komutlarına yapısal dillere ait özellikleri (begin, end, loop, for, if, elsif, vb.) eklediği kendi standardı olan bir dildir. SQL*Plus, SQL ve PL/SQL komutlarının kullanılabildiği Oracle ürünüdür.

2 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 2 GĠRĠġ Sql ile gerçekleştirilecek işlemlerde, üzerinde işlem yapılacak olan veri tabanı kütükleri ya da tablolar, bir veri tabanı içinde oluşturulur. Bu veri tabanını oluşturmak için, CREATE DATABASE VERĠ_TABANI_ĠSMĠ; Şeklindeki Sql komutunu kullanmak gerekir. Bu komut belirtilen isimde veri tabanını oluşturur. Daha önceden oluşturulmuş veri tabanlarını görmek için; SHOW DATABASES; Komutu kullanılır. Oluşturulan database üzerinde işlem yapmak için; USE DATABASE_ĠSMĠ; Komutu kullanılır. ÖRNEK-1: Personel bilgileri isminde bir veri tabanı oluşturalım. CREATE DATABASE PERSONEL_BILGILERI; Veri tabanı içerisine, bir işletmenin çeşitli faaliyetleri ile ilişkili aşağıdaki türlerde bilgiler yükleyelim. SICIL_N O SGN O AD I SOYAD I PERSONEL TABLOSU ADRE S DOG_TA R CINSIYE T MAA S BOL_N O YONETICI_N O BOLÜM TABLOSU BOLUM_ADI BOLUM_NO YONETICI_NO BOLUM_NO YER TABLOSU BULUNDUGU_YER PROJE TABLOSU PROJE_ADI PROJE_NO YER BOLUM_NO ÇALIġMA TABLOSU SGNO PROJE_NO SAAT BAGIMLILIK TABLOSU SGNO SICIL_NO CINSIYET DOG_TAR YAKINLIGI PARCA TABLOSU PARCA_NO PARCA_ADI PROJE_NO FIYAT AGIRLIK FIRMA TABLOSU FIRMA_NO ADI ADRES PARCA-FIRMA TABLOSU FIRMA_NO PARCA_NO MIKTAR

3 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 3 Veri Tipleri (Data Types) Veri tipi SQL komutu Özelliği Sabit uzunluklu karakter CHAR (uzunluk) Sayısal işleme sokulmayacak veriler. Değişken uzunluklu karakter VARCHAR (uzunluk) Buradaki uzunluk max. Uzunluktur. Karakter tipindeki veriler gibidir. Tek fark uzunluk değişkendir. Nümerik tam sayı INTEGER ile arasındaki tam sayılardır. Bellekte 4 Byte lık yer kaplarlar. Ondalık sayı Üstel sayı DECIMAL(x,y) REAL(x,y) ya da NUMERIC (x,y) BOOLEAN(x,y) örnek: 3.1E+17 gibi X sayısının max. hanesayısı y ondalık notadan sonraki hane sayısıdır. x en fazla 20, y ise 0-18 arasındadır. X sayısının toplam hane sayısıdır. max. Değer 20 dir.0.1e-307 ile 0.9E+308 arasındaki değerleri alabilir. Tarih türü veriler DATE Tarih türü veriler için işlem yapmayı sağlar. Mantıksal veri LOGICAL Doğru (true. T.) ya da yanlış (false. F.) şeklinde değer alabilen veriler için kullanılır. Zaman türü veriler TIME Ssddsnsn şeklindeki veriler için kullanılır. Tarih ve zaman türü veriler TIMESTAMP Tarih ve zaman türü verilerin bir karışımı şeklinde kullanılan veriler içindir. Grafik türü veriler GRAPHIC(n) N adet 16 bitlik karakterden oluşan bir sabit uzunluklu bilgi tanımlamak için kullanılır. Değişken uzunluklu grafik türü veri VARGRAPHIC(n) N adet 16 bitlik karakterden oluşan değişken uzunluklu bir bilgi tanımlamak için kullanılır.

4 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 4 TABLO OLUġTURMA Tabloların oluşturulması için CREATE TABLE TABLO_ĠSMĠ (ALANLAR VE ÖZELLĠKLERĠ); Komutu kullanılır. ÖRNEK-2: Giriş bölümünde verilen tabloların oluşturulması; PERSONEL TABLOSU CREATE TABLE PERSONEL (SICIL_NO INTEGER NOT NULL, SGNO VARCHAR(8) NOT NULL, AD VARCHAR(10) NOT NULL, SOYAD VARCHAR(10) NOT NULL, DOG_TAR DATE, ADRES VARCHAR(50), CINSIYET BOOLEAN, MAAS NUMBER(13,2), BOL_NO INTEGER, YONETICI_NO VARCHAR(8)); CREATE TABLE PARCA (PARCA_NO INTEGER, PARCA_ADI VARCHAR(15), PROJE_NO INTEGER, FIYAT NUMBER(13,2), AGIRLIK INTEGER); FIRMA TABLOSU CREATE TABLE FIRMA (FIRMA_NO INTEGER, FIRMA_ADI VARCHAR(20), ADRES VARCHAR(20)); BOLÜM TABLOSU CREATE TABLE BOLUM (BOLUM_ADI VARCHAR(15), BOLUM_NO INTEGER, YONETICI_NO VARCHAR(8)); PARÇA FĠRMA TABLOSU CREATE TABLE PARCA_FIRMA (FIRMA_NO INTEGER, PARCA_NO INTEGER, MIKTAR INTEGER); YER TABLOSU CREATE TABLE YER (BOLUM_NO INTEGER, BULUNDUGU_YER VARCHAR(15)); PROJE TABLOSU CREATE TABLE PROJE (PROJE_ADI VARCHAR(15), PROJE_NO INTEGER, YER VARCHAR(15), BOLUM_NO INTEGER); ÇALIġMA TABLOSU CREATE TABLE CALISMA (SGNO VARCHAR(8), PROJE_NO INTEGER, SAAT INTEGER); BAĞIMLILIK TABLOSU CREATE TABLE BAGIMLILIK (SGNO VARCHAR(8), SICIL_NO INTEGER, CINSIYET BOOLEAN, DOG_TAR DATE, YAKINLIGI VARCHAR(10)); PARÇA TABLOSU

5 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 5 TABLOLARDA DEĞĠġĠKLĠK YAPMA TABLOYA VERĠ GĠRĠġĠ (INSERT) SQL de, mevcut bir tabloya veri eklemek için kullanılacak olan komut INSERT komutudur. Standart SQL de, oluşturulan bir tabloya veri yüklemek için tek imkân INSERT komutudur. INSERT komutu ile tabloya, belli bir anda, tek bir satır eklemek imkânı vardır. INSERT komutunun yazılış biçimi aşağıdaki gibidir: INSERT INTO TABLO ADI(SÜTUN ADI1, SÜTUN ADI2,..SÜTUN ADI(N)) VALUES (DEĞER1, DEĞER2,...DEĞER(N)); ÖRNEK-3: Personel tablosuna, sicil no su 275 olan personel ile ilişkili bilgiler aşağıdaki gibi bir INSERT komutu ile yüklenebilir INSERT INTO PERSONEL (SICIL_NO, SGNO, ADI, SOYADI, DOG_TAR, ADRES, CINSIYET, MAAS, BOL_NO, YONETICI_NO) VALUES ( 275, , ALĠ, CANER, 1962/05/01, MERKEZ CAD. 46-FATĠH-IST,1, , 2, ); Karakter türü verilen sembolleri arasına yüklendiğine, diğer veriler içinse buna gerek olmadığına dikkat ediniz. Burada, tabloya tüm kolonlarla ilgili veri yüklendiği için, istenirse kolon isimleri ihmal edilebilir. Standart SQL deki INSERT komutunun, belli bir anda, tabloya, tek bir satırı eklemesine karşılık, birçok SQL gerçekleştiriminde, yığın halinde veri yükleyen hizmet programlarından (utility) faydalanmak imkânı da vardır. Ayrıca, INSERT komutunun bu şekli ile tabloya veri yüklemek pratikte tercih edilebilecek bir şekil değildir. (Her tablo satırı için bir INSERT komutu kullanılıyor) Daha kullanışlı olan yol, verilerin kullanıcın zorlanmayacağı bir ekran düzeni ile klavyeden yüklenmesi daha bunların INSERT ile tabloya yerleştirilmesidir. SQL de ekrandan interactive bilgi girişi ve ekran tasarımı sağlayacak komutlar yoktur. Fakat SQL in bir veri tabanı yönetim yazılımının (dbase, FoxPro, ORACLE) ya da bir üst düzey dilinin (C, Pascal, COBOL, vb.) interactive bilgi girişine uygun komutlarını kullanarak bu işlemi arzu edilen kalitede gerçekleştirmesi mümkündür. SQL in diğer dillerle etkileşimi daha sonra incelenecektir. TABLO SATIRLARINI SĠLME (DELETE) Bir tablonun satırlarını silmek için gerekli komut DELETE komutudur. Satır silme koşullu veya koşulsuz olarak gerçekleştirilebilir. DELETE FROM PERSONEL; 25 ROWS DELETED Bu komut ile personel tablosundaki tüm satırlar silinecektir. 25 Rows Deleted Mesajı ile o anda tabloda bulunan 25 satırın silindiği bildirilmektedir. Koşula bağlı olarak satır silmenin de mümkün olduğunu söylemiştik. Bunu gerçekleştirmek için, DELETE komutuna WHERE sözcüğü eklenmeli ve bunu izleyen ifade koşulu göstermelidir. DELETE FROM PERSONEL WHERE BOL_NO=2; 5 ROWS DELETED Bu komut ile 2 numaralı bölümdeki personelin tümü tablodan silinecektir. Rows Deleted Mesajı ile de, o anda 2 numaralı bölümde çalışan 5 personele ait satırların silindiği belirtilmektedir. Aşağıdaki örnekte ise maaş alanı boş olmayan tüm personel silinmektedir: DELETE FROM PERSONEL WHERE MAAS IS NOT NULL; 25 ROWS DELETED

6 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 6 TABLO SATIRLARINI GÜNCELLEME (UPDATE) PERSONEL adlı tabloda sicili olan kişinin maaşını olarak değiştirmek için UPDATE PERSONEL SET MAAS = WHERE SICIL_NO =27251; 2 inci bölümün yürüttüğü projelerde kullanılan tüm parçaların fiyatlarını % 7 zam yap UPDATE PARCA SET FIYAT = FIYAT *1,07 WHERE PR_NO IN (SELECT PROJ_NO FROM PROJE WHERE BL_NO = 2; TABLONUN YAPISINDA DEĞĠġĠKLĠK YAPMA ALTER TABLE KOMUTU ALTER TABLE komutu ile bir tablonun yapısında değişiklik yapmak mümkündür. Bu değişiklikler tabloya yeni bir kolon ekleme ADD komutu, mevcut kolonun özelliklerini değiştirme MODIFY komutu ile kolon genişliğini değiştirme yada kolondaki verinin NULL yada NOT NULL özelliğini değiştirme,tablodan kolon silme DROP,Mevcut kolonun adını değiştirme RENAME yada tablonun adını değiştirme RENAME TABLE öelliklerinin tamamı ALTER TABLE komutu içinde mevcuttur. Personel tablosuna işe başlama tarihi adında kolon ekleyiniz. ALTER TABLE PERSONEL ADD IS_BAS_TAR DATE; Daha önce proje adlı tabloda VARCHAR(15) olan alanı 25 olarak genişletiniz. ALTER TABLE PROJE MODIFY YER VARCHAR(25); Personel tablosundan IS_BAS_TAR kolonunu siliniz. ALTER TABLE PERSONEL DROP IS_BAS_TAR; Personel tablosunun adını elemanlar olarak değiştiriniz. ALTER TABLE PERSONEL RENAME TABLE ELEMANLAR; Personel tablosunda Maas alanını Brut olarak değiştiriniz. ALTER TABLE PERSONEL RENAME MAAS BRUT; Proje adlı tabloyu siliniz. DROP TABLE PROJE; Temel SQL Sorgulamaları SELECT Komutu Tablodan gerekli bilgileri elde edebilmek için sorgulama komutu SELECT * FROM PERSONEL; Şeklindedir. Bu komut, personel adlı tablo içindeki tüm bilgileri koşulsuz olarak listeleyecektir. SELECT sözcüğünü izleyen kısımda * sembolünün bulunması ilgili tablodaki tüm sütun isimlerinin ve ilgili bilgilerin listelenmesini sağlayacaktır. SELECT SICIL_NO, SGNO, ADI, SOYADI, DOG_TAR, ADRES, CINSIYET, MAAS BOL_NO, YONETICI_NO FROM PERSONEL; Şeklinde olan komut da SELECT sözcüğünden sonra gelen kısımda sütun adları, FROM sözcüğünden sonra gelen kısımda ise tablo ismi yer almaktadır. Tekrarlı Satırların Ortadan Kaldırılması (DISTINC) Tablo içinde birbirinin aynı veri içeren satırlara müsaade edilir. Birbirinin aynı olan satırların listeleme esnasında bir kez yazılması için SELECT komutuna DISTINC sözcüğü eklenir. SELECT DISTINC FIRMA_NO FROM PARCA_FIRMA; Bu komut ile parca_firma adlı tablodan firma numaraları tekrarsız olarak listelenecektir.

7 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 7 Tablo Bilgilerinin SıralanmıĢ Olarak Listelenmesi (ORDER BY) Tablodan listelenecek bilgilerin belirli bir sütun adına göre sıralanmış olarak görüntülenmesi için SELECT komutuna ORDER BY sözcüğü ilave edilir. ÖRNEK-4: Personel tablosundaki bilgilerin sicil_no, adi, soyadi ve maaş sütunlarını maaşa göre sıralı olarak listeleyiniz, SELECT SICIL_NO, ADI, SOYADI, MAAS FROM PERSONEL ORDER BY MAAS ASC; ASC sözcüğü artan anlamındadır. Veriler azalan sırada büyükten küçüğe ya da alfabetik olarak Z den A ya sıralanmak istense idi bu sözcük yerine DESC kullanılacaktı. Birden Çok Alana Göre Sıralama (ORDER BY) Bir tablo içindeki verileri aynı anda birden çok sütuna göre sıralamak da mümkündür. ÖRNEK-5: Personel tablosundaki sicil_no, adi, soyadi ve maaş sütunlarını adi ve maas a göre listeleyiniz, SELECT SICIL_NO, ADI, SOYADI, MAAS FROM PERSONEL ORDER BY ADI, MAAS; Burada tablo öncelikle ada göre artan sırada sıralanacak, sadece aynı ada sahip olanlar kendi aralarında MAAS A göre artan sırada sıralanacaklardır. Ada ve maaşa göre sıralama çıktısı; SICIL_NO ADI SOYADI MAAS 1215 Ali Can Ali Okan Birol Çelen Birol Akın Burada çok sayıda alana göre sıralama, farklı sıralama kriterlerine göre gerçekleştirilebilir. KoĢula Bağlı Olarak Listeleme SELECT komutu ile bir tablonun satırları içinden sadece verilen bir koşulu sağlayanlar listelenebilir. ÖRNEK-6: Maaşı dan fazla olan personel listelenmek istenirse SELECT komutu aşağıdaki gibi yazılmalıdır SELECT * FROM PERSONEL WHERE MAAS > ; Burada WHERE sözcüğünü izleyen kısımda koşul belirtilmektedir. Koşul belirtilirken iki veri birbiri ile karşılaştırılmaktadır. SQL içinde verileri çeşitli açılardan karşılaştırmak için karşılaştırma operatörleri kullanılmaktadır. Karşılaştırma ifadesinde karşılaştırılacak verilerin türleri aynı olmalıdır. KarĢılaĢtırma Operatörleri Operatör Anlamı < den küçük > den büyük = Eşit <= Küçük veya eşit >= Büyük veya eşit <> Eşit değil!= Eşit değil Birden Çok KoĢula Dayalı Sorgulamalar (Not, And, Or) Not, And ve Or mantıksal operatörleri yardımı ile birden çok koşulun gerçekleştirilmesine bağlı olarak ifade edilebilecek karmaşık ya da bileşik koşulu ile listelemeleri gerçekleştirmek mümkündür. ÖRNEK-7:

8 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 8 Maaşı TL den fazla olan ve cinsiyeti erkek olan personelin listelenmesi gibi bir işlemde söz konusu personel için iki koşul verilmekte ve her ikisinin de gerçekleşmesi istenmektedir. 1.koşul: Maaşın TL den fazla oluşu 2.Koşul: Cinsiyetin ERKEK olması SELECT * FROM personel WHERE MAAS > AND cins =.T. ; Koşul.T..F. NOT Operatörü NOT Koşul.F..T. AND OPERATÖRÜ 1.Koşul 2.Koşul 1.koşul AND 2.koşul.T..T..T..T..F..F..F..T..F..F.F..F. OR OPERATÖRÜ 1.Koşul 2.Koşul 1.Koşul AND 2.koşul.T..T..T..T..F..T..F..T..T..F.F..F. ÖRNEK-8: Doğum tarihi 1960 dan önce olan ve maaşı arasında olan bayan personelin listesi, SELECT *FROM PERSONEL WHERE DOG_TAR < 1960/01/01 AND MAAS >= AND MAAS <= AND CINSIYET =1; ÖRNEK-8: Satış bölümü ile muhasebe bölümündekiler kimlerdir? Satış bölümünün BOL_NO sunun 1 ve muhasebe bölümünün BOL_NO sunun 2 olduğunu varsayarsak; SELECT *FROM PERSONEL WHERE BOL_NO =1 OR BOL_NO =2; Bir Veri Kümesi Ġçinde Arama IN Operatörü Aşağıda vereceğim örnek sorunun cevabını şu ana kadar anlattığım SQL komutları ile gerçekleştirebiliriz ÖRNEK-9: BOL_NO su 1,2 ya da 3 olan personeli listeleyiniz. SELECT *FROM PERSONEL WHERE BOL_NO=2 OR BOL_NO=2 OR BOL_NO=3; Fakat SQL de bu işlemi gerçekleştirmenin daha kısa bir yolu vardır IN sözcüğü SELECT *FROM PERSONEL WHERE BOL_NO IN (1,2,3) ; Bu komut OR ile düzenlenen 1. SELECT cümlesine denktir. Fakat belirtildiği gibi daha kısa ve anlaşılır bir ifade oluşmaktadır. IN operatörü NOT ile birlikte kullanılabilir. Aralık Sorgulaması BETWEEN Sözcüğü ÖRNEK-10: Maaşı 5-10 Milyon arasında olan personel kimlerdir? SELECT *FROM PERSONEL WHERE MAAS >= AND MAAS <= ; Aynı soruya daha kısa ve daha etkin bir cevap verilecek olursa BETWEEN sözcüğü kullanılır. SELECT *FROM PERSONEL WHERE MAAS BETWEEN AND ;

9 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 9 Karakter Türü Bilgi Ġçinde Arama Yapma LIKE Sözcüğü Personel tablosu içinde adres alanı 50 karakter uzunluğunda karakter türü olarak tanımlanmıştı. Adres bilgisinin aşağıdaki şekilde verildiğini varsayalım; Cumhuriyet Cad. 46/9 Taksim-Ġstanbul. Burada adres içinde, semtin de belirtildiğini ve bunun ayrı bir sütun olmadığına dikkat çekelim. Şimdi belirli bir semtte ikamet eden personeli listelemek istersek semt adını, adres alanı içinde aramak gerekecektir. Bu işlemi gerçekleştirmek için LIKE sözcüğü kullanılır. SELECT *FROM PERSONEL WHERE ADRES LIKE % TAKSĠM % ; Bu komut ile Taksim semtinde ikamet eden personel listelenmek istenmektedir. Bu komut gerçekten de Taksim de oturan personeli listeleyecektir. Ama bu arada Taksim Caddesi 22-7 Kadıköy - Ġstanbul Şeklindeki adresleri de listeleyecektir. ADRES LIKE % TAKSĠM % İfadesi adres içinde Taksim i arayacaktır. Adres içinde herhangi bir yerde bulduğu takdirde bu satırı listeleyecektir.% sembolü Taksim sözcüğünün öncesinde ve sonrasındaki karakterler ne olursa olsun anlamındadır. Yukarıdaki LIKE ifadesi Taksim Cad.81-Fatih şeklindeki Taksim in en başta ve en sonda olduğu adresleri listeleyecektir. LIKE sözcüğünü, alt çizgi (_) sembolü ile birlikte de kullanmak da mümkündür. ARĠTMETĠKSEL ĠFADELER VE FONKSĠYONLAR Aritmetiksel ifadeler SELECT komutu ile veri tabanında mevcut tablolardan listeleme yaparken, tabloda ayrı bir sütun olarak yer almamış ve ancak bir hesaplama sonucunda üretilebilecek bilgileri de liste içine katmak mümkündür. Aşağıdaki SELECT komutu ile personelin şu anda geçerli olan maaşı ile bu maaşın %32 zamlı şekli listelenmektedir: SELECT ADI, SOYADI, MAAS, MAAS*1.32 FROM PERSONEL; Hesaplanmış alanları elde etmek için oluşturulacak aritmetiksel ifadelerde, aşağıda belirtilen tablodaki sembollerden yararlanılır. Sql de Aritmetiksel Semboller Operatör İşlevi ** veya ^ Üs alma * Çarpma / Bölme + Toplama - Çıkarma Öncelik sırası matematikte ve diğer bilgisayar dillerinde olduğu gibidir. Üs alma hepsinden önceliklidir. Sonra * ve / gelir. * ve / aynı önceliğe sahiptir. + ve en son önceliklidir. Parantezler kullanılarak öncelik sırası değiştirilebilir. Kümeleme Fonksiyonları SQL, tablo içinden çeşitli matematiksel işlemlerin sonucunu otomatik olarak üretmeyi sağlayan fonksiyonlara sahiptir. Bu fonksiyonlar örneklerle birlikte aşağıda verilmiştir. SUM Fonksiyonu Fonksiyonun argümanı olarak belirtilen sütun ile ilişkili olarak toplama işlemini gerçekleştirir. ÖRNEK-11: İşletmedeki personelin MAAS maaşları toplamı ne kadardır? SELECT SUM (MAAS) FROM PERSONEL; ÖRNEK-12: Bilgi işlem bölümündekilerin toplam maaşı ne kadardır? Bilgi işlem bölümünün bölüm numarasını 5 olarak kabul edelim.

10 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 10 SELECT SUM ( MAAS) FROM PERSONEL WHERE BOL_NO=5; İfadesi ile sonuç elde edilebilir. Sonuç sadece bilgi işlem bölümündekilerin maaşlarının toplamı olacaktır. ÖRNEK-13: Satış, muhasebe ve bilgi işlem bölümlerindeki personelin maaşları toplamı nedir? Satış bölümü için, böl_no 1, muhasebe için 2 ve bilgi işlem için 5 olarak alınırsa SELECT SUM (MAAS) FROM PERSONEL WHERE BOL_NO IN (1,2,5); ÖRNEK-14: Maaşları TL nin altında olan bayan personelin maaşları toplamı nedir? Bayan personeli, daha önceden cins alanına 0(sıfır) yerleştirerek kodlamış isek SELECT SUM(MAAS) FROM PERSONEL WHERE CINSIYET=0. AND MAAS < ; AVG Fonksiyonu Aritmetiksel ortalama hesaplamak için kullanılır. SELECT AVG (MAAS) FROM personel; Komutu, işletmedeki ortalama maaşı hesaplayarak görüntüleyecektir. Bu fonksiyon ile de, koşula bağlı olarak hesaplatma yaptırılabilir. ÖRNEK-15: Bilgi işlem bölümündekilerin maaş ortalamaları ne kadardır? Bilgi işlem bölümünün BOL_NO su 5 ise SELECT AVG (MAAS) FROM PERSONEL WHERE BOL_NO =5 MAX Fonksiyonu Tablo içinde, belirtilen sütun (alan) içindeki en büyük değeri bulur. ÖRNEK-16: İşletme içindeki en yüksek maaş ne kadardır? SELECT MAX (MAAS)FROM PERSONEL; ÖRNEK-17: Bilgi işlem bölümündeki en yüksek maaş ne kadardır? SELECT MAX (BRUT)FROM PERSONEL WHERE BOL_NO=5; ÖRNEK-18: Bayan personel içinde en yüksek maaş ne kadardır? SELECT MAX (MAAS)FROM PERSONEL WHERE CINSIYET=0 ; MIN Fonksiyonu Tablo içinde, belirlenen sütun içindeki en küçük değeri bulur. ÖRNEK-19: İşletme içinde 4 Mayıs 1970 den önce doğanlar için asgari ücret nedir? SELECT MIN (MAAS ) FROM PERSONEL WHERE DOG_TAR < 1970/05/04 ; COUNT Fonksiyonu Tablo içinde herhangi bir sayma işlemi gerçekleştirmek için kullanılır. ÖRNEK-20: Personel tablosunda kaç satır vardır? (Bu her satırda farklı bir personel olduğu düşünülürse personel sayısı anlamına da gelmektedir.) SELECT COUNT (*) FROM PERSONEL; Bu koşula bağlı olarak da saydırma yapmak mümkündür. ÖRNEK-21: Ücreti dan fazla olan personel sayısı nedir? SELECT COUNT (*) FROM PERSONEL WHERE MAAS > ; COUNT fonksiyonu, DISTINCT sözcüğü ile de kullanılabilir.

11 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 11 ÖRNEK-22: Personel tablosunda mevcut personelin, işletme içinde kaç tane farklı bölümde çalıştığı bulunmak istenirse aşağıdaki SELECT komutu kullanılabilir. SELECT COUNT ( DISTINC BOL_NO) FROM PERSONEL; COUNT komutunda, * argümanının kullanılması, tüm sütunların (alanların) işleme sokulmasını, alan adının belirtilmesi ise (COUNT (böl_no) gibi), sadece belirtilen sütunun işleme sokulmasını sağlar. Gruplandırarak iģlem yapma Yukarıda anlatılan fonksiyonları, tablodaki bilgileri, bazı özelliklere göre gruplandırarak bu gruplandırılmış veri üzerinde de uygulama yapmak mümkündür. Bu işlem GROUP BY sözcükleri ile gerçekleştirilmektedir. ÖRNEK-23: Her bölümdeki ortalama maaş nedir? Burada istenen, bölümler bazında ortalama maaş olduğuna göre, personel tablosundaki satırlar, bölüm numaralarına göre (böl_no) gruplandırılarak her bir grubun maaş ortalaması ayrı ayrı hesaplanarak listelenebilir. SELECT BOL_NO, AVG (MAAS) FROM PERSONEL GROUP BY BOL_NO; SONUÇ Böl_no AVG (MAAS) ÖRNEK-24: Her bölümdeki en yüksek maaşı olan kişiler listelenmek istenirse, aşağıdaki komut kullanılabilir: SELECT BOL_NO, MAX (MAAS), ADI, SOYADI FROM PERSONEL GROUP BY BOL_NO ; Peronel tablosundaki bilgiler : MAAS Ad soyad Böl_no Ali Can Ayşe Okan Akın Oran Rana Şensoy 2 Şeklinde ise yukarıdaki SELECT komutunun çıktısı Böl_no Max_MAAS Ad Soyad Ali Can Rana Şensoy Şeklinde olacaktır. Gruplandırarak kümeleme fonksiyonlarını uygularken koşul da verilebilir. Bu durumda grup üzerindeki hesaplamalarla ilgili koşul belirtilirken HAVING sözcüğünü kullanmak gerekir. ÖRNEK-25: En yüksek maaşın dan fazla olduğu bölümlerdeki personele ait ortalama maaşları listeleyiniz. SELECT BOL_NO, AVG (MAAS) FROM PERSONEL GROUP BY BOL_NO HAVING AVG (MAAS) > ; Personel tablosunda şu bilgiler mevcut olsun : Böl_no MAAS

12 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa Yukarıdaki SELECT komutu sonrasında Böl Avg_MAAS Tablosu elde edilecektir. HAVING sözcüğü SELECT komutunda GROUP BY sözcükleri bulunmadığı zaman geçersizdir. HAVING sözcüğünü içeren ifade içinde SUM, COUNT, (*), AVG, MAX, MIN gibi diğer kümeleme elemanlarından en az biri bulunmalıdır. WHERE sözcüğü bir tablonun tek tek satırları üzerinde işlem yapan koşullar için geçerli iken, HAVING sözcüğü sadece gruplanmış veriler üzerindeki işlemlerde geçerlidir. Bazı durumlarda HAVING ve WHERE sözcükleri birlikte SELECT komutu içinde kullanılabilir. ÖRNEK-26: Personel tablosu içinde her bölümde erkek personele ait maaşlar için ortalamanın den fazla olduğu bölümleri listeleyiniz. SELECT BOL_NO, AVG (MAAS) FROM PERSONEL WHERE CINSIYET =.T. GROUP BY BOL_NO HAVING AVG (MAAS) > ; Personel tablosunda aşağıdaki bilgiler olsun Böl_no MAAS Cins T F F F T F T T. Yukarıda uygulanan SELECT komutu, her bölümdeki erkek personele ait ortalama MAAS maaşı hesaplayacak (erkek personel 1 ile belirlenmiştir.) ve erkek personel maaş ortalaması den yüksek olan bölümler listelenecektir. Komutun çıktısı aşağıdaki gibidir Böl_no Avg_MAAS BĠRDEN FAZLA TABLOYU ĠLĠġKĠLENDĠREREK SORGULAMA BirleĢtirme ( JOIN ) ĠĢlemi Birleştirme işlemini anlayabilmek için konumuzun başında anlattığımız personel ve bölüm tablolarının içinde yer alan bölümleri hatırlayalım. Personel Tablosu: SICIL_NO, SGNO, ADI, SOYADI, DOG-TAR, ADRES, CINSIYET, MAAS, BOL_NO, YONETICI_NO Bölüm Tablosu: BOLUM ADI, BOL_NO, YONETICI_NO sundan oluşuyordu Bu tablolar ile ilişkili olarak aşağıdaki soruyu soralım: ÖRNEK-27:

13 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 13 Çalışan her personel ve bu personelin yöneticisi ile ilişkili bilgiler nelerdir? Belirli bir personel ile ilişkili bilgiler personel tablosunun o personele ait satırında mevcuttur. Ancak personelin yöneticisi ile ilişkili bilgilerin bir kısmına ise bölüm tablosundan erişilebilir. Bu durum zorunlu olarak personel ile bölüm tabloları arasında ilişki kurulmasını gerektirir. Bu ilişki ancak müşterek bir alan yardımı ile kurulabilir. Müşterek alan burada bölüm numarasıdır ve personel tablosunda böl_no, bölüm tablosunda ise bölüm_no adı ile yer almaktadır. Müşterek alana göre personel ve bölüm tablolarının birleştirilmesi ( JOIN ) demek, her iki tablodaki tüm sütunları içeren yeni bir tablo oluşturmak demektir. Yalnız bu tabloda sadece her iki tabloda da mevcut olan bölüm numaraları ile ilişkili satırlar yer alacaktır. Birleştirme işlemi ile listeleme aşağıdaki SQL komutu ile gerçekleştirilmektedir SELECT *FROM PERSONEL, BOLUM WHERE PERSONEL. BOL_NO =BOLUM. BOLUM_NO; İlişkilendirme kolayca görülebileceği gibi WHERE PERSONEL. BOL_NO = BOLUM. BOLUM_NO Tablo adı Kolon adı İfadesi ile sağlanmaktadır. Aşağıdaki örnek veri için bu JOIN işlemi sonucu, aşağıdaki tabloda görülmektedir. PERSONEL TABLOSU SICIL_NO SGNO ADI SOYADI DOG_TAR ADRES CĠNSĠYET MAAS BOL _NO YONETICI_ NO Ali Can 60/05/01 Fatih Ayşe Şen 65/07/04 Kadıköy Akın Öncel 64/07/11 Üsküdar Can Öner 65/08/05 Fatih Beril Meral 62/07/08 Pendik Ayşe Cansu 63/08/07 Beşiktaş BOLUM TABLOSU BOLUM_ADI BOLUM_NO YONETICI_NO IS_BAS_TAR Satış /07/01 Muhasebe /08/02 Üretim /06/04 Eğitim /05/01 Bilgi işlem /02/05 Personel ve bölüm tablolarının müşterek alan olan bölüm numarası üzerinde JOIN birleştirme işlemine tabi tutulması sonucu elde edilen bilgi sadece her iki tabloda da aynı bölüm numaralarına ait satırlar alınarak birleştirilmiş ve her iki tablonun alanlarından oluşan büyük bir tablo halinde listelenecektir. UNION Sözcüğü UNION sözcüğü küme birleştirme işlemi görür. İki ayrı SELECT komutunun sonucunda elde edilen tabloların birleşimi işlemini görür. ÖRNEK-28: Adı Ahmet ve soyadı Caner olan kişi ve kişileri işletmenin yürüttüğü projelerde çalışan kişi olarak bulunduran projelerin isimlerini ve projelerin yürütüldüğü yerleri listeleyiniz. ( SELECT PROJE_ADI, YER FROM PROJE, BOLUM, PERSONEL WHERE BOL_NO=BOLUM_NO AND YONETICI_NO SGNO AND ADI= AHMET AND SOYADI = CANER ) UNION ( SELECT PROJE_ADI, YER FROM PROJE, CALISMA, PERSONEL WHERE PROJE_NO =PROJE_NO AND SGNO =SGNO AND ADI= AHMET AND SOYADI = CANER )

14 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 14 UNION sözcüğü ile iki ya da daha çok SELECT in sonucu olan tabloların küme birleşimi işlemine tabi tutulması için iki koşul gereklidir. SELECT komutları sonucunda elde edilecek tablolar aynı sayıda kolon içermelidirler. 1.SELECT Sonuç tablosu 2.SELECT Sonuç tablosu Sonuç tablolarının karşılıklı olarak kolonları aynı veri tipi ve aynı genişlikte olmalıdır. ANY Sözcüğü ÖRNEK-29: Satış bölümünde çalışan personelin herhangi birinden daha düşük maaş alan ve mühendislik bölümünde çalışan kişileri listeleyiniz; SELECT * FROM PERSONEL WHERE MAAS < ANY ( SELECT MAAS FROM PERSONEL WHERE BÖL_NO =2) AND BOL_NO =1; Bu çözümün eşdeğer ifadesi şöyledir; SELECT *FROM PERSONEL WHERE MAAS < ( SELECT MAX (MAAS) FROM PERSONEL WHERE BOL_NO =2) AND BOL_NO =1; Burada satış bölümü kodu 2 ve mühendislik bölümü kodu ise 1 olarak kabul edilmiştir. İkinci çözüm ifadesinden de anlaşılacağı gibi iç içe SELECT ifadesinde içteki SELECT sorgulaması sonucun; 2. Bölümde çalışan personelin içinde en yüksek maaş alan kişinin maaşı bulunmakta dıştaki SELECT ise mühendislik bölümünde bu maaştan düşük olan maaşa sahip kişiler listelenmektedir. Buradaki düşünce tarzı şöyledir: Mühendislik bölümünde çalışan ve satış bölümündeki en yüksek maaştan düşük maaş alan bir kişi satış bölümündeki herhangi bir maaştan düşük olma koşulunu sağlayacaktır. ANY sözcüğünün yerine tamamen eşdeğeri olan SOME sözcüğü de kullanılabilir. ALL Sözcüğü Hepsi, tamamı anlamındaki bu sözcük SELECT komutu içerisinde belirli bir koşulu sağlayan bir grup datanın tamamınca sağlanan koşullarla ilişkili olarak kullanılır. ÖRNEK-30: Satış bölümünde çalışan ve mühendislik bölümündeki personelin hepsinden daha fazla maaş alan personeli listeleyiniz. Satış bölümü kodu 2 ve mühendislik bölümü kodu1 olarak alınırsa; 1. Alternatif SELECT * FROM PERSONEL WHERE MAAS > ALL (SELECT MAAS FROM PERSONEL WHERE BOL_NO=1) AND BOL_NO=2; EXISTS Operatörü Var, mevcuttur anlamındaki bu sözcük, SQL de bir Boolean ( lojik, mantıksal) operatördür. İçteki SELECT komutunun sorgulaması sonucunda en az bir tablo satırı üretilmişse EXISTS operatörü true değerini, hiçbir tablo satırı üretilmemişse, EXISTS operatörü false değerini üretir. EXISTS operatörü, AND, OR ve NOT gibi diğer mantıksal operatörlerle birlikte de kullanılabilir. ÖRNEK-31: Numarası 27 olan parçayı satan satıcılarla ilişkili tüm bilgileri listeleyiniz. İlgili SELECT komutlarını yazabilmek için, sistemde satıcı adlı tabloda ve par_sat adlı tabloda aşağıdaki kolon ve verilerin olduğunu varsayalım;

15 Öğr. Gör. Namık ĠÇELĠ SQL NOTLARI Sayfa 15 FIRMA_NO ADI ADRES 1 Ali akın İstanbul 2 Ayşe can İstanbul 3 AkınPeker Ankara 4 Can Ozan İzmir 5 Mert Ak Antalya SELECT *FROM FIRMA WHERE EXISTS ( SELECT * FROM PARCA_FIRMA WHERE FIRMA_NO =FIRMA_NO AND PARCA_NO=27) ; Aşağıdaki sonuç elde edilir. FIRMA_NO ADI ADRES 1 Ali akın Istanbul 2 Ayşe can Istanbul Yukarıda da belirtildiği gibi, iç SELECT te WHERE I izleyen koşulu sağlayan satırlar PARCA_FIRMA içinde bulundukça EXISTS operatörü true değerini verecek bu durumda dış SELECT in WHERE kısmı doğru olacağı için o firma ile ilişkili bilgiler firma tablosundan listelenecektir. VĠEW OLUġTURMAK Veri tabanı kavramı içinde teorik olarak mevcut olan view (bakış ) terimi, farklı kullanıcıların veri tabanına nasıl baktıklarını ya da bakış açılarını anlatan terimdir. Bu anlamda bir kullanıcı fiziksel olarak mevcut olan tabloların sadece bir kısmı ile ilgilenir. VIEW OluĢturmanın Yararları 1.Veri Güvenliği Veri tabanı içinde bulunan tablolardaki bazı sütunlarda bulunan bilgilerin herkes tarafından görülmesi istenmeyebilir. ÖRNEK-32 Personelin maaşlarının herkes tarafından listelenebilir olması mahsurlu olabilir. Bu durumda personel adlı temel tablodan PERSVIEW adlı bir view oluşturulabilir: CREATE VIEW PERSVIEW AS SELECT SICIL_NO, SGNO, ADI, SOYADI, DOG_TAR, ADRES, CINSIYET, BOL_NO, YONETICI_NO FROM PERSONEL; PERSVIEW adlı view, herkesin kullanımına açık, personel adlı tablo ise yetkili kişiler dışındakilere, erişilemez hale getirilirse, maaşların herkes tarafından erişilebilir bilgi olması önlenmiş olur. Bir view den bilgi listelenmesi temel tablodan bilgi listelenmesinden farklı değildir. SELECT *FROM PERSVIEW; PERSVIEW den maaşlar hariç tüm personel bilgileri listelenecektir. Bir temel tablodaki aynı sütun isimleri kullanılmak zorunda değildir. 2.Sorgulamanın Daha Basit Hale Gelmesi Karmaşık sorgulamalarda, bazı SELECT komutlarının sonuçları diğer SELECT komutlarında kullanıldığında, sorgulanmanın düzenlenmesinde yanlışlıklar yapma olasılığını artar. Karmaşık sorgulamalar, View özelliği kullanılarak daha basit hale getirilebilir. Burada temel fikir şudur: Mademki bir view, bir sorgulama sonucu elde edilen bilgiyi (tabloyu) isimlendirerek elde edilen bir virtüel tablodur; o halde karmaşık SELECT komutu içinde, sonucu kullanacak başka bir SELECT komutu yerine, bu sonucu bir view olarak isimlendirerek, view adını kullanmak. Bazı durumlarda ise,

Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin, herkes tarafından görülmesi istenmeyebilir.

Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin, herkes tarafından görülmesi istenmeyebilir. View Oluşturma Sql komutlarından view oluşturma ve faydaları, myadminde gösterimi VİEW OLUŞTURMANIN YARARLARI 1. Veri güvenliği Veri tabanı içinde bulunan tablolardakibazı sütunlarda bulunan bilgilerin,

Detaylı

Like Joker Karakterler, Order By, Group By

Like Joker Karakterler, Order By, Group By Like Joker Karakterler, Order, Group Like joker karakterler, order by, group by Karakter Türü Bilgi İçinde Arama Yapma (Like Sözcüğü) Personel tablosu içinde adres adlı 50 karakter uzunluğunda bir alanımız

Detaylı

Sql Komutlarından Select Sorgusu Ve Myadmin Üzerinden Anlatımı

Sql Komutlarından Select Sorgusu Ve Myadmin Üzerinden Anlatımı Myadmin Üzerinden Anlatımı Bir Tablonun Farklı İsimlerdeki Eşdeğerleri İle Sorgulama Daha önceden tanımlanmış bir tablonun, farklı isimli, bir eşdeğerini oluşturarak sorgulamalarda kullanmak mümkün olabilir.

Detaylı

Veri Tabanı Tasarım ve Yönetimi

Veri Tabanı Tasarım ve Yönetimi SAKARYA ÜNİVERSİTESİ Veri Tabanı Tasarım ve Yönetimi Hafta 5 Prof. Dr. Ümit KOCABIÇAK Bu ders içeriğinin basım, yayım ve satış hakları Sakarya Üniversitesi ne aittir. "Uzaktan Öğretim" tekniğine uygun

Detaylı

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler

SQL'e Giriş. SELECT Deyimi. SQL Komutları. Yardımcı Deyimler SQL'e Giriş SQL komutları kullanılarak aşağıdaki işlemler yapılabilir: Veritabanı nesnelerinin oluşturulması ve bu nesnelerle ilgili işlemlerin yapılması Bilgilerin istenilen koşullara göre görüntülenmesi

Detaylı

Veritabanı. SQL (Structured Query Language)

Veritabanı. SQL (Structured Query Language) Veritabanı SQL (Structured Query Language) SQL (Structured Query Language) SQL, ilişkisel veritabanlarındaki bilgileri sorgulamak için kullanılan dildir. SQL, bütün kullanıcıların ve uygulamaların veritabanına

Detaylı

SQL Komutları (2) Uzm. Murat YAZICI

SQL Komutları (2) Uzm. Murat YAZICI SQL Komutları (2) Uzm. Murat YAZICI Sıralama Sıralama işlemi için SELECT ifadesinde ORDER BY kullanılır. Bu ifadede ASC kelimesi kullanılırsa sıralama küçükten büyüğe doğru (A-Z), DESC kullanılırsa büyükten

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 8 8. TEMEL SQL KOMUTLARI-II 8.1. SELECT (Seç) Komutu Veri tabanındaki tablo veya tablolardan istenilen özellikteki verileri seçip listeleme için kullanılan komuttur. Genel kullanımı aşağıdaki gibidir.

Detaylı

BÖLÜM 1. Yapisal Sorgulama Dili (SQL)

BÖLÜM 1. Yapisal Sorgulama Dili (SQL) BÖLÜM 1 Yapisal Sorgulama Dili (SQL) İlişkisel veri tabanı yönetim sistemleri (RDBS) modeli ilk önce 1970 yılında Dr.E.F. Codd tarafından tarif edilmiştir. SQL veya Structured English Query Language (SEQUEL),

Detaylı

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler

Genel Kavramlar. Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar. Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler Genel Kavramlar Veri Nedir? Bilgisayar ortamında işlenebilecek durumda bulunan kayıtlar Veri Tabanı Nedir? Birbiri ile ilişkili veriler topluluğu ve veriler arası ilişkiler Veritabanı Yönetim Sistemi (DBMS)Nedir?

Detaylı

YAPISAL SORGULAMA DİLİ (SQL)

YAPISAL SORGULAMA DİLİ (SQL) YAPISAL SORGULAMA DİLİ (SQL) OGRENCI Tablosu 1234 Zeynep Makina K 23.06.1984 1. Cad 3.4 CREATE TABLE VERİ TANIMLAMA DİLİ (VTD) Veritabanında yeni bir tablonun oluşturulmasını sağlar. Yukarıda tanımlanan

Detaylı

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır.

Bu işleçlerin dışında, aşağıda belirtilen karşılaştırma işleçlerinden de yararlanılır. 18 SQL SORGU DİLİ SQL (Structured Query Language) yapısal sorgu dili, veritabanı yönetim sistemlerinin standart programlama dili olarak bilinmektedir. SQL dilinin Access içinde sorgu pencerelerinde veya

Detaylı

VERİTABANI. SQL (Structured Query Language)

VERİTABANI. SQL (Structured Query Language) VERİTABANI SQL (Structured Query Language) SQL'de Gruplama Bir tablonun satırları gruplara ayrılarak fonksiyonların bunlara uygulanması mümkündür. Gruplara ayırmak için SELECT deyimi içerisinde GROUP BY

Detaylı

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Sorgulama Yaparken Gruplama (GROUP BY) 2- Gruplamada Koşul Kullanımı (HAVING) 3- Sorgulama Yaparken Sıralama (ORDER BY) 4- Sorgulamalarda İşlem Yapma 5- Güncellemelerde İşlem

Detaylı

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER VERİTABANI SORGULARI İÇİNDEKİLER Select İfadesi Insert İfadesi Update İfadesi Delete İfadesi Verileri Sıralamak Verileri Gruplandırmak Veriler Üzerinde Arama Yapmak NESNE TABANLI PROGRAMLAMA I Uzm. Orhan

Detaylı

SQL Kod ile Tablo Oluşturma

SQL Kod ile Tablo Oluşturma SQL Kod ile Tablo Oluşturma Aşağıdaki SQL kodları Veri tabanı hazırlama programında yazılıp çalıştırıldığı zaman PERSONEL adında bir tablo oluşturulur ve bu tablonun sütunları Personel_no, Adı, Soyadı

Detaylı

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır.

SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır. SQL veri tabalarına erişmek ve onları kullanmak için geliştirilmiş bir lisandır. Bu dersimizde biz Microsoft SQL Server veritabanı sistemini kullanmayı öğreneceğiz. SQL Nedir? SQL Structured Query Language

Detaylı

Data Programming SQL Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı

Data Programming SQL Language. Elbistan Meslek Yüksek Okulu Bahar Yarıyılı Data Programming SQL Language Elbistan Meslek Yüksek Okulu 2015 2016 Bahar Yarıyılı Öğr.Gör. Murat KEÇECĠOĞLU 15 Mar 2016 1 SQL deyimleri veritabanları üzerinde çeşitli işlemleri yerine getirirler. Veritabanından

Detaylı

VERİTABANI ve YÖNETİMİ

VERİTABANI ve YÖNETİMİ VERİTABANI ve YÖNETİMİ Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü 2 BÖLÜM -7- VERİLERİ GRUPLAYARAK ANALİZ ETMEK 3 Genel Bakış Grup fonksiyonlarının tanımlanması, Gruplama işlemlerini, Gruplama

Detaylı

VERİTABANI Veritabanı Yönetimi

VERİTABANI Veritabanı Yönetimi VERİTABANI Veritabanı Yönetimi YAPILANDIRILMIŞ SORGULAMA DİLİ (SQL) Veritabanı yönetimi, veritabanının yapısal özelliklerini belirtmek ve değiştirmek, veritabanına kullanıcı erişimlerini ve yetkilerini

Detaylı

BÖLÜM 1 BİR VERİ TABANININ OLUŞTURULMASI

BÖLÜM 1 BİR VERİ TABANININ OLUŞTURULMASI YAPISAL SORGULAMA DİLİ SQL BÖLÜM 1 BİR VERİ TABANININ OLUŞTURULMASI SQL Yapısal sorgulama dili (SQL - Structured Query Language) ilişkisel veri tabanı dilidir. SQL veri tabanında yeni tablo oluşturma,

Detaylı

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız.

Aşağıdaki tabloyu inceleyin. Sorgulama işlemlerini bu tabloya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Basit Sorgulamalar a. Tablodan tüm alanları sorgulama b. Tablodan alanları belirterek sorgulama c. Tekrarlı satırları önleme d. Belirli sayıda veya oranda sorgulama yapma

Detaylı

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER

ÜNİTE NESNE TABANLI PROGRAMLAMA I. Uzm. Orhan ÇELİKER VERİTABANI SORGULARI İÇİNDEKİLER HEDEFLER VERİTABANI SORGULARI İÇİNDEKİLER Select İfadesi Insert İfadesi Update İfadesi Delete İfadesi Verileri Sıralamak Verileri Gruplandırmak Veriler Üzerinde Arama Yapmak NESNE TABANLI PROGRAMLAMA I Uzm. Orhan

Detaylı

SQL e Giriş. Uzm. Murat YAZICI

SQL e Giriş. Uzm. Murat YAZICI SQL e Giriş Uzm. Murat YAZICI SQL (Structured Query Language) - SQL Türkçe de Yapısal Sorgulama Dili anlamına gelmektedir ve ilişkisel veritabanlarında çok geniş bir kullanım alanına sahiptir. - SQL ile

Detaylı

Veri Tabanı SQL Server ve Management Studio kurulum linkleri: https://www.microsoft.com/en-us/download/details.aspx?id=42299

Veri Tabanı SQL Server ve Management Studio kurulum linkleri: https://www.microsoft.com/en-us/download/details.aspx?id=42299 Veri Tabanı 1 1. SQL Server ve Management Studio kurulum linkleri: https://www.microsoft.com/en-us/download/details.aspx?id=42299 2. SQL Management Studio açılış ekranı: Server Type: reporting, analysis

Detaylı

ACCESS PLATFORMUNDA SQL

ACCESS PLATFORMUNDA SQL ACCESS PLATFORMUNDA SQL (STRUCTURED QUERY LANGUAGE) KODLAMA ÖRNEKLERİ DISTINCT : Bir alanda birbirinin aynı kayıtlar bulunabilir. Öğrenciler tablosundaki aynı isimde öğrencilerin bulunması durumunda aynı

Detaylı

SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir.

SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL'e Giriş SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL (Structured Query Language) kendisi bir programlama

Detaylı

Bölüm 4: DDL Veri Tanımlama Dili

Bölüm 4: DDL Veri Tanımlama Dili Bölüm 4: DDL Veri Tanımlama Dili -43- Dr. Serkan DİŞLİTAŞ DDL (Data Definition Language Veri Tanımlama Dili : Bu kategorideki SQL komutları ile veritabanları, tablo, görünüm ve indekslerin yaratılması,

Detaylı

SORGULAR. Öğr.Gör.Volkan Altıntaş

SORGULAR. Öğr.Gör.Volkan Altıntaş SORGULAR Öğr.Gör.Volkan Altıntaş SORGULAR VE ÇEŞİTLERİ Seçme Sorguları: En sık kullanılan sorgu türüdür. Seçme sorguları, bilgileri veri sayfası görünümü nde gösteren veri tabanı nesnesi türüdür. Sorgu,

Detaylı

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim' Bu Derste Öğrenecekleriniz: 1- Veri Tabanı Adı Değiştirme 2- Nesnelerin Adını Değiştirme a. Tablo Adı Değiştirme b. Alan Adı Değiştirme c. Constraint (Kısıtlama) Adı Değiştirme 3- Tablo Düzenleme Komutları

Detaylı

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir.

Basit SQL Sorguları Veritabanından verilerin SELECT cümleleri ile alınması işlemine sorgulama denir. SQL SELECT CÜMLELERİ Oracle birçok kullanışlı ve güçlü özellikleri olan bir veritabanıdır. Bu özelliklerinin birçoğu SQL ile ilgilidir. VTYS lerinin çoğunluğunda veriler ile çalışmak için SQL kullanılmaktadır.

Detaylı

Sql komutlarından DISTINCT, IN, NOT IN, IN(SELECT...), ANY, ALL, EXISTS, NOT EXISTS, UNION, EXCEPT, BETWEEN kullanımı

Sql komutlarından DISTINCT, IN, NOT IN, IN(SELECT...), ANY, ALL, EXISTS, NOT EXISTS, UNION, EXCEPT, BETWEEN kullanımı Sql Komutları Sql komutlarından DISTINCT, IN, NOT IN, IN(SELECT...), ANY, ALL, EXISTS, NOT EXISTS, UNION, EXCEPT, BETWEEN kullanımı DISTINCT Veritabanımızda oluşturduğumuz tablonun içinde birbirinin aynı

Detaylı

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon

8 Oracle da tablo yapısı içinde otomatik artan kolon yoktur. (identity kolon ORACLE GİRİŞ Oracle ile SQL Server ın karşılaştıralım. 1 Oracleda veritabanı yerine kullanıcı oluşturulur. Kullanıcılar veritabanı gibi davranır. 2 Tablo oluşturma, değiştirme ve silme kodları aynı. 3

Detaylı

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili)

SQL'e Giriş. SELECT Deyimi. SQL Komutları. 1. DDL (Data Definition Language - Veri Tanımlama Dili) SQL'e Giriş SQL komutları kullanılarak aşağıdaki işlemler yapılabilir: Veritabanı nesnelerinin oluşturulması ve bu nesnelerle ilgili işlemlerin yapılması Bilgilerin istenilen koşullara göre görüntülenmesi

Detaylı

İşletim Sistemi. İşletim Sistemi

İşletim Sistemi. İşletim Sistemi Klasik Dosya (File) Sistemi Bir işletmenin günlük faaliyetlerini sürdürebilmesi için işletmenin çeşitli konuları ile ilgili olarak çok miktarda bilgi depolanması gerekebilir. Bilgisayarın işletme uygularında

Detaylı

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) Genel SQL SQL çok yüksek seviyeli bir dildir. Biraz ingilizce bilgisi gerektirir. Programlama dillerine göre öğrenilmesi çok daha kolaydır. Çünkü programlama dillerindeki

Detaylı

BMB202. Veritabanı Yönetimi Ders 5. İlişkisel Cebir ve SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

BMB202. Veritabanı Yönetimi Ders 5. İlişkisel Cebir ve SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BMB202. Veritabanı Yönetimi Ders 5. İlişkisel Cebir ve SQL Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Dersin Planı İlişkisel Cebir SQL e Giriş İlişkisel Cebir (Relational

Detaylı

VERİTABANI Veritabanı Sorgulama

VERİTABANI Veritabanı Sorgulama VERİTABANI Veritabanı Sorgulama VERİ SORGULAMA DİLİ (DATA QUERY LANGUAGE) Veritabanı platformunda veri sorgulamak için geliştirilmiş en temel araç SQL (Structured Query Language)'dir. SQL'in veritabanı

Detaylı

Veritabanına Uygulanması

Veritabanına Uygulanması Add, Alter Drop, Alter Change, Alter Sql komutları ve açıklamaları CREATE CREATE TABLE Üzerinde çalışma yapılan veritabanı içerisinde yeni bir tablonun oluşturulmasını sağlar. CREATE TABLE tablo_adı (alan_adı1

Detaylı

Mysql Veritabanı Komutları

Mysql Veritabanı Komutları Mysql Veritabanı Komutları Mysql Veri Tabanı Komutları Hazırlayan : M. Başar ACAROĞLU Kaynaklar: http://www.hrzafer.com/sql-dersleri http://www.w3schools.com/sql/default.asp Veri Tabanı Nedir? Mysql Veritabanı

Detaylı

Veritabanı ve Yönetim Sistemleri

Veritabanı ve Yönetim Sistemleri Veritabanı ve Yönetim Sistemleri Öğr. Gör. M. Mutlu YAPICI Ankara Üniversitesi Elmadağ Meslek Yüksekokulu Öğr. Gör. M. Mutlu YAPICI Ders İzlencesi Hafta Modüller/İçerik/Konular 1. Hafta Temel Kavramlar

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 11 11. SQL de JOIN (BİRLEŞTİRME) İŞLEMİ 11.1. JOIN (Birleştirme) İşlemi Veri tabanı kayıtları oluşturulurken bütün bilgiler bir tabloda değil de, birkaç tablo üzerinde tutulur. Bu dataların daha

Detaylı

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Hafta IV. Öğr. Gör. Murat KEÇECĠOĞLU

08221 Veri Tabanı II. Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı. Hafta IV. Öğr. Gör. Murat KEÇECĠOĞLU 08221 Veri Tabanı II Elbistan Meslek Yüksek Okulu 2014 2015 GÜZ Yarıyılı Hafta IV Öğr. Gör. Murat KEÇECĠOĞLU T-SQL KOMUTLARI Devamı DISTINCT: Birbirinin ayni olan satirlarin listelenmemesi için bu ifade

Detaylı

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım.

DAO İLE SQL KOMUTLARI. Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım. DAO İLE SQL KOMUTLARI Sql komutlarını artık veri tabanında kullanmaktan başka çaremiz yok arkadaşlar. Şimdi bu sql derslerimize başlayalım. SQL-1 SELECT En basit SQL cümleciği oluşturmak için SELECT sözcüğü

Detaylı

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu

Tablolar Arası İlşikiler ve Alan Özellikleri Siparis.musteri_no musteri.musteri_no Siparis.urun_kodu musteri.urun_kodu SQL'DE VERİ İŞLEME KOMUTLARI SQL'de verileri işlemek için kullanılan komutlara DML (Data Manipulation Language Veri İşleme Dili) denilmektedir. Bu komutlar ile oluşturulan ifadeler tablolara kayıt eklemek,

Detaylı

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN VERITABANI-I SQL Tek Tablo İçinde Sorgulamalar Tekrarlı Satırların Engellenmesi Aynı değerlere sahip satırlar

Detaylı

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1

5 SQL- Yapısal Sorgulama Dili. Veritabanı 1 5 SQL- Yapısal Sorgulama Dili Veritabanı 1 SQL- Yapısal Sorgulama Dili SQL ifadeleri yapısal olarak üç gruba ayrılır. Veri Tanımlama Dili (DDL - Data Definition Language) Veri İşleme Dili (DML - Data Manipulation

Detaylı

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur.

TEMEL SQL SORGU ÖRNEKLERİ. Yukarıdaki sorguyu yazıp çalıştırdığımızda db_market adında bir veritabanı oluşturulur. TEMEL SQL SORGU ÖRNEKLERİ Sorgu İle Veritabanı Oluşturma create database veritabanı_adı Örnek : create database db_okul Yukarıdaki sorguyu çalıştırdığımızda db_okul adında bir veritabanı oluşturulur. Örnek:

Detaylı

İNTERNET PROGRAMCILIĞI 2 11. HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme

İNTERNET PROGRAMCILIĞI 2 11. HAFTA. MYSQL ile VERİTABANI İŞLEMLERİ - 1. Hazırlayan Fatih BALAMAN. İçindekiler. Hedefler. Veritabanı Oluşturma, Silme İNTERNET PROGRAMCILIĞI 2 11. HAFTA İçindekiler Veritabanı Oluşturma, Silme MYSQL ile VERİTABANI İŞLEMLERİ - 1 Tablo Oluşturma, Silme Tabloya Bilgi Girme Veritabanı Sorgulamaları Hedefler Mysql komutları

Detaylı

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language)

Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language) Veritabanı Yönetim Sistemleri (Veritabanı Tasarımı) SQL (Structured Query Language) Konular Yapısal SQL Komutları Gruplama İşlemi SQL Fonksiyonları Kaynaklar 2 SQL (Structured Query Language) SQL Carlos

Detaylı

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi -- www.tdmsoft.com. devrim@gunduz.org

Veritabanlarına ve SQL'e Giriş. Devrim GÜNDÜZ. Teknoloji Destek Merkezi -- www.tdmsoft.com. devrim@gunduz.org Veritabanlarına ve SQL'e Giriş Devrim GÜNDÜZ Teknoloji Destek Merkezi -- www.tdmsoft.com devrim@gunduz.org http://seminer.linux.org.tr http://www.gunduz.org Giriş Bu seminerde, aşağıdaki konular anlatılacaktır:

Detaylı

YAPISAL SORGULAMA DİLİ. BARIŞ ARIBURNU barisariburnu.com

YAPISAL SORGULAMA DİLİ. BARIŞ ARIBURNU barisariburnu.com YAPISAL SORGULAMA DİLİ BARIŞ ARIBURNU barisariburnu.com barisariburnu.@gmail.com SQL, insanların veritabanı sistemleri ile konuşmasını sağlayan popüler bir dildir. SQL, tüm veritabanı programlarında kullanılabilir.

Detaylı

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR

T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR T.C GAZİ ÜNİVERSİTESİ BİLİŞİM ENSTİTÜSÜ YÖNETİM BİLİŞİM SİSTEMLERİ ANA BİLİM DALI MS SQL KOMUTLARI VE MS SQL KOMUTLARI İLE İLGİLİ UYGULAMALAR YÜKSEK LİSANS PROJESİ Mehmet Emin AKKAYA Danışman: Yrd. Doç.

Detaylı

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301)

Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301) Maltepe Üniversitesi Bilgisayar Mühendisliği Bölümü Veri Tabanı ve Yönetimi (BİL 301) GENEL DERS BİLGİLERİ Öğretim Elemanı : Öğr. Gör. Erdal GÜVENOĞLU Ofis : MUH 313 Ofis Saatleri : Pazartesi: 10.00-12.00,

Detaylı

Oracle da kullanılan veri tipleri:

Oracle da kullanılan veri tipleri: ORACLE A GİRİŞ Oracle ile SQL Server ı karşılaştıralım, 1 Oracle da veritabanı yerine kullanıcı oluşturulur. Kullanıcılar veritabanı gibi davranır. 2 Tablo oluşturma, yapısını değiştirme, silme kodları

Detaylı

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com

SQL Deyimleri. Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com SQL Deyimleri Öğr.Gör.Volkan ALTINTAŞ Volkanaltintas.com SQL NEDİR? SQL bir veri tabanıyla iletişim kurmak için kullanılır. ANSI standardına göre ilişkisel veri tabanı yönetim sistemlerinin standart dilidir.

Detaylı

Bilgisayar Uygulamaları. MySql

Bilgisayar Uygulamaları. MySql MySql MySql,; Oracle, Progress, MsSql, PostgreSql gibi veri tabanı programıdır. Kullanılan dil SQL (Structured Query Language) yapısal sorgulama dilidir. Lisansı GNU General Public License olarak bilinen

Detaylı

Bölüm 3: DML Veri İşleme Dili

Bölüm 3: DML Veri İşleme Dili Bölüm 3: DML Veri İşleme Dili -15- Dr. Serkan DİŞLİTAŞ DML (Data Manipulation Language Veri İşleme Dili) : Bu kategorideki SQL komutları veriler üzerinde işlemler yapmaya yönelik ifadeleri içermektedir.

Detaylı

Veri Tabanı Programlamaya Giriş

Veri Tabanı Programlamaya Giriş Veri Tabanı Programlamaya Giriş Kitap özeti Veri Tabanı Programlamaya Giriş SQL insanların veritabanı sistemleri ile konuşmasını sağlayan popüler bir dildir. Bu dil sayesinde, bir veritabanından kayıtları

Detaylı

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

EBE-368 Veri Tabanı Yönetim Sistemleri SQL EBE-368 Veri Tabanı Yönetim Sistemleri SQL Dr. Dilek Küçük SQL Sorgu Dili [1] Ogrenci no ad soyad yas ortalama 21325 Necla Yılmaz 18 2,9 21345 Öykü Okan 20 2,1 21378 Elçin Demir 19 3,3 21389 Özgür Kara

Detaylı

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim'

SP_RENAMEDB eski_isim, yeni_isim VEYA SP_RENAMEDB 'eski isim', 'yeni isim' Bu Derste Öğrenecekleriniz: 1- Veri Tabanı Adı Değiştirme 2- Nesnelerin Adını Değiştirme a. Tablo Adı Değiştirme b. Alan Adı Değiştirme c. Constraint (Kısıtlama) Adı Değiştirme 3- Tablo Düzenleme Komutları

Detaylı

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler

Tablolar Arası İlşikiler ve Alan Özellikleri. Şekil 1. Magaza veritabanının tabloları ve tablolar arasındaki ilişkiler SQL'de Veri İşleme Komutları SQL'de verileri işlemek için kullanılan komutlara DML (Data Manipulation Language Veri İşleme Dili) denilmektedir. Bu komutlar ile oluşturulan ifadeler tablolara kayıt eklemek,

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ

VERİ TABANI YÖNETİM SİSTEMLERİ VERİ TABANI YÖNETİM SİSTEMLERİ Veri Tabanı Nedir? Sistematik erişim imkânı olan, yönetilebilir, güncellenebilir, taşınabilir, birbirleri arasında tanımlı ilişkiler bulunabilen bilgiler kümesidir. Bir kuruluşa

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 5

Veri Tabanı Yönetim Sistemleri Bölüm - 5 Veri Tabanı Yönetim Sistemleri Bölüm - 5 İçerik SELECT deyimi (devam) Verinin Sınırlandırılması (WHERE) Karşılaştırma İşleçleri (=, >, =,

Detaylı

SQL (Structured Query Language)

SQL (Structured Query Language) SQL (Structured Query Language) Neden SQL? SQL çok yüksek seviyeli bir dildir. İngilizce bilen herkes bu dili kolayca öğrenebilir. Programlama dillerine göre öğrenilmesi çok daha kolaydır. Çünkü programlama

Detaylı

VERĐTABANI YÖNETĐM SĐSTEMLERĐ

VERĐTABANI YÖNETĐM SĐSTEMLERĐ VERĐTABANI YÖNETĐM SĐSTEMLERĐ Öğr.Gör.Sedat Telçeken ANADOLU ÜNĐVERSĐTESĐ FEN FAKÜLTESĐ MATEMATĐK BÖLÜMÜ 2005 2006 Bahar Dönemi D M L Bilindiği üzere SQL tablolar üzerinde sorgulama yapar. Bu sorgular

Detaylı

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız.

Aşağıdaki şemaya dikkat edin. Sorgulamalarımızı genellikle bu şemaya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Birden Fazla Tablodan Sorgulama 2- Tablo Birleştirme işlemleri (JOIN) a. INNER JOIN b. OUTER JOIN i. LEFT OUTER JOIN ii. RIGHT OUTER JOIN iii. FULL OUTER JOIN 3- Tablo Ekleme

Detaylı

Oracle Database 11g: Introduction to SQL

Oracle Database 11g: Introduction to SQL Oracle Database 11g: Introduction to SQL Mehmet Salih DEVECI GTECH-Kıdemli Veritabanı Yöneticisi Mehmetsalih.deveci@gtech.com.tr BÖLÜM- 1: SQL E GİRİŞ SELECT ifadesinin kabiliyetlerinin ortaya çıkarılması

Detaylı

SQL'e Giriş 2. CREATE TABLE tabloadı (kolon isimleri ve veri türleri) (BOLUM_NO NUMBER, BOLUM_ADI CHAR(10));

SQL'e Giriş 2. CREATE TABLE tabloadı (kolon isimleri ve veri türleri) (BOLUM_NO NUMBER, BOLUM_ADI CHAR(10)); SQL'e Giriş 2 VERİ TANIMLAMA (DDL) İŞLEMLERİ Genel Yazılımı, 1. TABLOLARIN OLUŞTURULMASI (CREATE TABLE): CREATE TABLE tabloadı (kolon isimleri ve veri türleri) Örnek 1: CREATE TABLE BOLUM (BOLUM_NO NUMBER,

Detaylı

Çok tablolu sorgulamalar

Çok tablolu sorgulamalar Çok tablolu sorgulamalar Eğer birden fazla tabloda yer alan verilerin tek bir sorgu ile görüntülenmesi istenirse FROM kısmında ilgili tablolar araya virgül konularak yazılmalı, WHERE kısmında ise o tabloları

Detaylı

Nesneler üzerinde değişiklik yapmak için kullanılır. Veri tabanındaki nesnelerin oluşturulabilmesi için CREATE komutu kullanılır.

Nesneler üzerinde değişiklik yapmak için kullanılır. Veri tabanındaki nesnelerin oluşturulabilmesi için CREATE komutu kullanılır. Transact SQL Kavramı Microsoft'un veri tabanı sorgulama dilidir. Transact-SQL, SQL Server ve istemci(client) arasında iletişimi sağlayan SQL sorgulama dilinin gelişmiş bir versiyonudur. Transact Structured

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 4

Veri Tabanı Yönetim Sistemleri Bölüm - 4 Veri Tabanı Yönetim Sistemleri Bölüm - 4 İçerik SQL e Giriş. SQL Yapısal Sorgulama Dili. Temel SQL Komutları: Sorgulama İşlemleri SELECT deyiminin temel yapısı Seçme İşlemi Atma İşlemi Aritmetik İfadelerin

Detaylı

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME

BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME BÖLÜM -7: TABLOLARI OLUŞTURMA VE YÖNETME Ana veritabanı nesnelerini sınıflandırmak Tablo yapısını inceleme Tablo sütunlarının veri tiplerini listeleme Basit bir tablo oluşturma Constraint oluşturma Şema

Detaylı

VERİ TABANI YÖNETİM SİSTEMLERİ I

VERİ TABANI YÖNETİM SİSTEMLERİ I BÖLÜM 7 7. TEMEL SQL KOMUTLARI-I SQL (Structured Query Language) kendisi bir programlama dili olmamasına rağmen bir çok kişi tarafından programlama dili olarak bilinir. SQL herhangi bir veri tabanı ortamında

Detaylı

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN

Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı. Öğr. Gör. Cansu AYVAZ GÜVEN Bilgisayar Teknolojileri Bölümü Bilgisayar Programcılığı Programı Öğr. Gör. Cansu AYVAZ GÜVEN VERITABANI-I SQL (Structured Query Language) SQL (Structured Query Language) SQL, ilişkisel veritabanlarındaki

Detaylı

Veri Tabanı II Alt Sorgular

Veri Tabanı II Alt Sorgular Veri Tabanı II Alt Sorgular Alt Sorgular Alt sorgular bir SQL sorgusunun içerisinde başka bir SQL sorgusu kullanılarak oluşturulan SQL ifadeleridir. Çoğunlukla SQL sorgusunun WHERE ve HAVING kısımlarında

Detaylı

SQL Query and Table Application

SQL Query and Table Application SQL Query and Table Application Elbistan Meslek Yüksek Okulu 2012 2013 Bahar Yarıyılı Öğr. Gör. Murat KEÇECİOĞLU 24-25 Nis. 2013 Sorgulama İşlemleri SQL de sorgulama işlemleri SELECT deyimi yardımıyla

Detaylı

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model)

EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model) EBE-368 Veri Tabanı Yönetim Sistemleri İlişkisel Model (The Relational Model) Dr. Dilek Küçük İlişkisel Model [1] Günümüzde en yaygın kullanılan veri tabanı modelidir. Bir ilişkisel veri tabanı bir veya

Detaylı

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi

20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi 20461C Querying Microsoft SQL Server Modül Seviye Belirleme Testi 1) Aşağıdaki SQL Server sürümlerinden hangisi ana sürümlerden bir tanesidir? a) Parallel Data Warehouse b) Express c) Standart d) Developer

Detaylı

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir.

Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir. Oracle (Devam) SELECT INTO Deyimi Sorgudan elde edilen değerin değişkenlere aktarılmasını sağlar. Sorgudan tek satır dönmesi gerekir. Çok satır dönerse hata verir. Genel ifade: SELECT kolonisimler INTO

Detaylı

Veri Tabanı-I 9.Hafta

Veri Tabanı-I 9.Hafta Veri Tabanı-I 9.Hafta SELECT komutu 1 SELECT YAPISI SELECT FROM [WHERE ] , veritabanından değerleri alınacak olan kolonların listesidir. kolon_listesi

Detaylı

Veritabanı Tasarımı. Tablo Değiştirme

Veritabanı Tasarımı. Tablo Değiştirme Veritabanı Tasarımı Tablo Değiştirme Konular Tabloyu değiştirme neden önemlidir açıklama ALTER, DROP, RENAME ve TRUNCATE DDL komutlarının etkisini tablolar ve sütunlar üzerinde görme ALTER TABLE komutlarıadd,

Detaylı

3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri. 1.2. Kısıtlamalar (Constraints)

3. Hafta Tablo İşlemleri BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri. 1.2. Kısıtlamalar (Constraints) Bu Derste Öğrenecekleriniz: 1. Tablo İşlemleri 1.1. Tablo Oluşturma 1.2. Tablo Oluşturmada Kısıtlamalar Constraints 1.3. Tablo Silme a. NULL, NOT NULL b. PRIMARY KEY c. UNIQUE d. FOREIGN KEY e. CHECK f.

Detaylı

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL-2

SUNGURLU MESLEK YÜKSEKOKULU 5. T-SQL-2 SUNGURLU MESLEK YÜKSEKOKULU BİLGİSAYAR TEKNOLOJİLERİ/BİLGİSAYAR PROGRAMCILIĞI 2017-2018 GÜZ DÖNEMİ VERİ TABANI YÖNETİM SİSTEMLERİ-II 5. T-SQL-2 Öğr. Gör. Saliha Kevser KAVUNCU Sql Üç Alt Grupta İncelenir:

Detaylı

Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak.

Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak. Amaçlarımız 2 Ġşlem tablosu kavramını tanımlamak ve işlem tablolarının işlevlerini öğrenmek. Ġşlem tablolarının temel kavramlarını tanımlamak. Microsoft Excel 2010 da bilgi girişi yapabilmek. Excel de

Detaylı

Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu tabloya göre yapacağız.

Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu tabloya göre yapacağız. Bu Derste Öğrenecekleriniz: 1- Tabloya Veri (Yeni Kayıt) Ekleme 2- Kayıt Silme 3- Kayıt Güncelleme Aşağıdaki tabloyu inceleyin. Yeni kayıt girme, var olan bir kaydı silme veya güncelleme işlemlerini bu

Detaylı

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir.

Veritabanı sistemlerinde veri bütünlüğünü sağlayabilmek için CONSTRAINTS olarak adlandırılan bazı zorlayıcı ifadeler kullanılabilir. VERİ BÜTÜNLÜĞÜ VTYS lerde veri bütünlüğünü sağlamanın iki temel yolu vardır; Tanımlanabilir veri bütünlüğü ve prosedürel veri bütünlüğü. Tanımlanabilir veri bütünlüğü, tanımlanan nesnelerin kendi özellikleri

Detaylı

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme

Veritabanı Tasarımı. Kullanıcı Erişimini Kontrol Etme Veritabanı Tasarımı Kullanıcı Erişimini Kontrol Etme Konular Nesne ayrıcalıkları ve sistem ayrıcalıkları arasındaki farkı karşılaştırma Bir kullanıcının bir veritabanınaerişimini etkinleştirmek için gerekli

Detaylı

Lıke Joker Karakterler, Is [not] Null, Order By, Group By, As

Lıke Joker Karakterler, Is [not] Null, Order By, Group By, As LIKE (Joker Karakterler) Joker karakterleri kullanarak bir veri sütunu veya ifadeler içinde desen arayabilirsiniz. Örneğin, soyadları "Ak" ile başlayan veya "kaya" ile biten tüm çalışanları arayabilirsiniz.

Detaylı

VİEW (SANAL TABLO) 1. View Nedir? 2. View ler ile Çalışmak 3. View Oluşturmanın Yararları Veri güvenliği; Birim dönüştürmeleri;

VİEW (SANAL TABLO) 1. View Nedir? 2. View ler ile Çalışmak 3. View Oluşturmanın Yararları Veri güvenliği; Birim dönüştürmeleri; VİEW (SANAL TABLO) 1. View Nedir? View ler, sorguları basitleştirmek, erişim izinlerini düzenlemek, farklı sunuculardaki eşdeğer verileri karşılaştırmak veya bazı durumlarda sorgu süresini kısaltmak için

Detaylı

Veritabanı Tasarımı. NOT NULL ve UNIQUE Kısıtlamaları Tanımlama

Veritabanı Tasarımı. NOT NULL ve UNIQUE Kısıtlamaları Tanımlama Veritabanı Tasarımı NOT NULL ve UNIQUE Kısıtlamaları Tanımlama NOT NULL ve UNIQUE Kısıtlamaları Tanımlama Konular Kısıtlama terimini veri bütünlüğü ile ilişkilendirerek tanımlama Sütun seviyesinde ve tablo

Detaylı

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir.

TRIGGER. Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. TRIGGER Trigger lar, tablo üzerinde tanımlanabilen ve bu tablo üzerinde bir işlem gerçekleştiğinde tetiklenen programlama ögeleridir. DML ve DDL trigger lar olarak ikiye ayırmak mümkündür. DML (Data Manipulation

Detaylı

Veritabanı Tasarımı. DML İşlemleri ve Görünümler

Veritabanı Tasarımı. DML İşlemleri ve Görünümler Veritabanı Tasarımı DML İşlemleri ve Görünümler Konular Basit bir görünümde DML işlemlerini gerçekleştiren bir sorgu yazma ve çalıştırma DML işlemleri kullanarak bir görünümü değiştirme yeteneğini kısıtlayan

Detaylı

BMB202. Veritabanı Yönetimi Ders 6. SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü

BMB202. Veritabanı Yönetimi Ders 6. SQL. Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü BMB202. Veritabanı Yönetimi Ders 6. SQL Erdinç Uzun NKÜ Çorlu Mühendislik Fakültesi Bilgisayar Mühendisliği Bölümü Dersin Planı SQL Fonksiyonları Çoklu Tablo İşlemleri İç içe Select ler JOIN Birleştirme

Detaylı

Veri Tabanı Hafta Dersi

Veri Tabanı Hafta Dersi Veri Tabanı - 1 7. Hafta Dersi Dersin Hedefleri SQL Yapısal Sorgulama Dili Veri Tanımlama Dili (DDL) Create Alert Drop Veri tanımlama dili verinin ne olduğundan çok verinin tipi ile ilgilenir. Veri tabanı

Detaylı

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Ara Öğr. Gör. Murat KEÇECĠOĞLU

Elbistan Meslek Yüksek Okulu GÜZ Yarıyılı Ara Öğr. Gör. Murat KEÇECĠOĞLU Elbistan Meslek Yüksek Okulu 2015 2016 GÜZ Yarıyılı 28-29 Ara. 2015 Öğr. Gör. Murat KEÇECĠOĞLU Indexler İndeks, tablolardan veri çekmek için gerekli sorgular çalıştırılırken gereken süreyi azaltmak amacıyla

Detaylı

SQL DİĞER Deyimler ve Komutlar

SQL DİĞER Deyimler ve Komutlar SQL DİĞER Deyimler ve Komutlar İÇİ İÇE SELECT KULLANIMI (NESTED SELECT) JOIN KULLANIMI INNER JOIN LEFT JOIN RIGHT JOIN FULL JOIN SQL İç İçe Select (Nested Select) İç içe Select sorguları, bir başka deyişle

Detaylı

BİLİŞİM TEKNOLOJİLERİ

BİLİŞİM TEKNOLOJİLERİ T.C. MİLLÎ EĞİTİM BAKANLIĞI BİLİŞİM TEKNOLOJİLERİ VERİ TABANI YÖNETİMSEL FONKSİYONLARI Ankara, 2013 Bu modül, mesleki ve teknik eğitim okul/kurumlarında uygulanan Çerçeve Öğretim Programlarında yer alan

Detaylı

Veri Tabanı Yönetim Sistemleri Bölüm - 6

Veri Tabanı Yönetim Sistemleri Bölüm - 6 Veri Tabanı Yönetim Sistemleri Bölüm - 6 İçerik Fonksiyonlar Tek Satır Fonksiyonlar Karakter Fonksiyonlar Sayısal Fonksiyonlar Tarih ve Saat Fonksiyonları Dönüştürücü Fonksiyonlar Çoklu Satır Fonksiyonlar

Detaylı