Kişiler tablosundan AD kolonu yusuf olan tüm satırları siler. ORDER BY deyimi bir tablodan SELECT ile seçilen verileri sıralamak için kullanılır.

Benzer belgeler
SQL FONKSİYONLARI SQL lisanında hesaplama ve sayma işlemlerinde kullanılmak üzere bir çok fonksiyon vardır.

Birden Çok Tabloda Sorgulama (Join)

Bilgisayar Uygulamaları. MySql

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

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

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

Güz Yarıyılı MT 487 Bilgisayarda Veri Yapıları Final Çalışma Soruları

VERİTABANI. SQL (Structured Query Language)

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

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

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

SQL e Giriş. Uzm. Murat YAZICI

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

BÖLÜM- 5: BİRDEN FAZLA TABLODAN VERİ GETİRMEK

SQL Kod ile Tablo Oluşturma

1. Araçların tüm bilgilerini ve bağlı oldukları kiralama noktasının adres ve telefonunu içeren tam listesi:

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

Veritabanı. SQL (Structured Query Language)

Veritabanı Yönetim Sistemleri

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

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

Mysql Veritabanı Komutları

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

İlişkisel Veri Tabanları I

10 Birden Fazla Tablo Üzerinde Sorgulama

ACCESS PLATFORMUNDA SQL

Veritabanı Tasarımı. Kartezyen Çarpım ve Join İşlemleri

5 Sorgulama İşlemleri. Veritabanı 1

Yukarıdakilerden hangileri DML (Data Manipulation Language) ile gerçekleştirilir?

Veri Tabanı SQL Server ve Management Studio kurulum linkleri:

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

MT487_2005guz_final_cevaplar (cevaplar vurgulu ve koyu yazılmıştır)

İNTERNET TABANLI PROGRAMLAMA- 12.ders

SQL DİĞER Deyimler ve Komutlar

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

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

SQL Komutları (2) Uzm. Murat YAZICI

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

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

Emrah UYSAL 1

İLİŞKİSEL VERİTABANLARINDA BİRLEŞTİRME

Veri Tabanı Hafta Dersi

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

VERİTABANI Veritabanı Sorgulama

Veri Tabanı Tasarım ve Yönetimi

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

Birleştirme (JOIN) işlemi

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

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

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

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

5 Sorgulama İşlemleri. Veritabanı 1

BÖLÜM -2: VERİLERİ SINIRLAMA VE SIRALAMA

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

Veri Tabanı-I 9.Hafta

SQL Query and Table Application

Oracle Database 11g: Introduction to SQL

VERİTABANI ve YÖNETİMİ

VERİTABANI Veritabanı Yönetimi

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

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

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

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

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

Veritabanı Tasarımı. SQL Deyimi Anatomisi

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

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

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

Veritabanı Tasarımı. Sütunlar, Karakterler ve Satırlar ile Çalışma

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

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

KISITLAMALAR (CONSTRAINT)

Öğr. Gör. Cansu AYVAZ GÜVEN VERİTABANI-II. Değişken Tanımlama Ve Akış Kontrol Deyimleri

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

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

Veri Tabanı Programlamaya Giriş

Oracle da kullanılan veri tipleri:

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

EĞİTİM : VERİ TABANI SORGULAMA İŞLEMLERİ VE PROGRAMLAMA NESNELERİ. Bölüm : Veri Sorgulama İşlemleri. Konu : Veri Sorgulama

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

Like Joker Karakterler, Order By, Group By

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

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.

Veri Tabanı-I 12.Hafta

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

Veritabanı ve Yönetim Sistemleri

Her bölüm için kısa bazı girişler yapılacak ve bölüm içerisinde anlatılacak olan konuların genel başlıkları belirtilecektir.

EROL AKGÜL

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

IN ve NOT IN Tablodaki alan içeriklerine ulaşmak için IN deyimi kullanılır.

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ü

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

- Tablo (Table):Veri saklama için temel yapıdır. Bir veya daha fazla sütundan ve sıfir veya daha fazla satırdan oluşur.

Veritabanına Uygulanması

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

BİLİŞİM TEKNOLOJİLERİ

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

BİLİŞİM TEKNOLOJİLERİ

«BM364» Veritabanı Uygulamaları

Transkript:

DELETE Deyimi DELETE deyimi bir tablodan veri silmek için kullanılır. DELETE tablo_adı [WHERE arama_koşulu] Örneğin DELETE Kişiler WHERE (SIRANO = 1) Kişiler tablosundan SIRANO = 1 olan satırı siler. DELETE Kişiler WHERE (AD = 'yusuf') Kişiler tablosundan AD kolonu yusuf olan tüm satırları siler. DELETE Kişiler Kişiler tablosundan tüm satırları siler. ORDER BY Deyimi ORDER BY deyimi bir tablodan ile seçilen verileri sıralamak için kullanılır. ORDER BY KolonAdı [DESC] [, KolonAdı [DESC] [,.]] Örnekler WHERE SIRANO, AD, SOYAD, DOGUMTAR, DOGUMYER Kişiler (AD = 'yusuf') ORDER BY SOYAD, DOGUMTAR DESC Kişiler tablosundan AD kolonu yusuf olan tüm satırları SOYAD kolonuna göre artan, DOGUMTAR Kolonuna göre azalan sırada listeler.

IN Operatörü IN operatörü bir tablonun kolonlarından birinin bir kümenin elemanı olması istediğinde arama koşulunda. IN (Liste) Örnekler WHERE SIRANO, AD, SOYAD, DOGUMTAR, DOGUMYER Kişiler (AD IN ('yusuf', 'ahmet')) ORDER BY SOYAD, DOGUMTAR DESC Kişiler tablosundan AD kolonu yusuf veya ahmet olan tüm satırları SOYAD kolonuna göre artan, DOGUMTAR kolonuna göre azalan sırada listeler. IN deyimindeki liste bir deyimi kullanılarak elde edilen bir liste de olabilir. WHERE SIRANO, AD, SOYAD, DOGUMTAR, DOGUMYER Kişiler (DOGUMYER IN ( ILAD IL ORDER BY SOYAD, DOGUMTAR DESC WHERE (ILKOD <= 34) AND (ILKOD >= 22))) Kişiler tablosundan DOGUMYER kolonu, IL tablosundan ILAD IL WHERE (ILKOD <= 34) AND (ILKOD >= 22)

SQL deyimi ile çekilen listede olan; bir başka deyişle ILKOD u 22 ile 34 arasında olan illerden biri olan kişilerin listesini SOYAD kolonuna göre artan, DOGUMTAR Kolonuna göre azalan sırada verir. BETWEEN Operatörü BETWEEN... AND operatörü bir kolon için iki değer arasında kalan değerlerin seçilmesini sağlayan arama koşulunda kullanılır. Kolon_Adı BETWEEN Değer1 AND Değer2 Örnekler SIRANO, AD, SOYAD, DOGUMTAR, DOGUMYER Kişiler WHERE (SIRANO BETWEEN 3 AND 15) Kişiler tablosundan SIRANO kolonu 3 ile 15 olan tüm satırları listeler. SQL Geçici isimler (Alias) Bir SQL ifadesinde tabloların veya kolonların isimleri geçici bir isimle adlandırılabilir. Kolon_Adı AS Geçici_kolon_adı Veya Tablo_adı [AS] Geçici_tablo_adı Örnekler SIRANO AS SIRA, AD AS ISIM, SOYAD, DOGUMTAR, DOGUMYER Kişiler WHERE (SIRANO <=2) Deyimi

SIRA ISIM SOYAD DOGUMTAR DOGUMYER 1 Osman Yeşilkuş 21.12.1976 Malatya 2 Esin Eylem Kara 24.06.1976 Adana A.ILCEKOD, A.ILKOD, A.ILCEAD, B.ILAD ILCE A INNER JOIN WHERE (A.ILKOD = 1) IL B ON A.ILKOD = B.ILKOD Bu SQL deyiminde ILCE tablosu geçici olarak A ve IL tablosu geçici olarak B olarak adlandırılmıştır. Bu SQL ifadelerini daha okunaklı yapmak bakımından çok faydalı olabilir. ILCEKOD ILKOD ILCEAD ILAD 100 1 Adana Adana 101 1 Seyhan Adana 102 1 Yüreğir Adana... SQL Join, Yabancı anahtar (FOREIGN KEY), Birincil anahtar (PRIMARY KEY) Bazı durumlarda birden fazla tablodan veri kümesi almak gerekebilir. Birden fazla tablo birleştirilerek tek bir liste halinde sonuç kümesi elde etmeyi gerektiren durumlar olabilir. Bu şeklide tabloları birleştirerek sonuç kümesi elde etmeye yarayan işleme birleştirme veya JOIN işlemi denir. Buna güzel bir örnek IL ve ILCE tablolarının birbiriyle olan ilişkileri göz önüne alınarak verilebilir. IL tablosu ILCE tablosu ILKOD ILAD ILCEKOD ILKOD ILCEAD

Her ilçe bir ile bağlıdır. ILCE tablosunda bunu belirtmek için bir ILKOD kolonu kullanılmıştır. Bu IL tablosunda ILKOD kolonuna ilişkili olan bir kolondur. IL tablosunda ILKOD kolonu IL tablosunun asıl anahtarıdır (PRIMARY KEY). Bu anahtar IL tablosunda her il için bir tanedir. Ve illeri tek türlü belirler. ILCE tablosunun asıl anahtarı ILCEKOD dur. ILCE tablosunda ILKOD kolonu IL tablosunun ayni isimli anahtarı ile ilişkili yabancı anahtardır( FOREIGN KEY). Bu yabancı anahtar sayesinde bir ilçenin hangi ilin ilçesi olduğu anlaşılmaktadır. Örneğin ILCE tablosunda ILCEKOD u 403 olan satırı düşünelim. Bu satırda ILKOD olarak 4 değeri bulunmaktadır. Buradan 403 ILCEKOD lu Eleşkirt ilçesinin ILKOD u 4 olan ile ait olduğu anlaşılmalıdır. ILCEKOD ILKOD ILCEAD 403 4 Eleşkirt Bu tabloları kullanarak 403 ILCEKOD lu ilçeyi il adı ile birlikte görmek istersek JOIN işlemini kullanmak gerekir. Aşağıda bununla ilgili örnekleri vereceğiz. Birkaç değişik JOIN işlemi vardır. INNER JOIN operatörü Tablo_adı1 [Alias1] INNER JOIN Tablo_adı2 [Alias2] ON bağlantı_koşulu A.ILCEKOD, A.ILKOD, A.ILCEAD, B.ILAD ILCE A INNER JOIN IL B ON A.ILKOD = B.ILKOD WHERE (A.ILCEKOD = 403) ILCEKOD ILKOD ILCEAD ILAD

403 4 Eleşkirt Ağrı Bu örnekte ILKOD u 1 olan ilin tüm ilçelerinin listesini görmek istiyoruz. A.ILCEKOD, A.ILKOD, A.ILCEAD, B.ILAD ILCE A INNER JOIN WHERE (B.ILKOD = 1) IL B ON A.ILKOD = B.ILKOD ILCEKOD ILKOD ILCEAD ILAD 100 1 Adana Adana 101 1 Seyhan Adana 102 1 Yüreğir Adana... Kişiler.SIRANO, Kişiler.AD, Kişiler.SOYAD, IL.ILKOD, IL.ILAD Kişiler INNER JOIN IL ON Kişiler.DOGUMYER = IL.ILAD Veya K.SIRANO, K.AD, K.SOYAD, I.ILKOD, I.ILAD Kişiler K INNER JOIN WHERE (K.SIRANO <= 2) IL I ON K.DOGUMYER = I.ILAD

ORDER BY K.SIRANO DESC SIRANO AD SOYAD ILKOD 2 Esin Eylem Kara 1 1 Osman Yeşilkuş 44 LEFT OUTER JOIN operatörü Tablo_adı1 [Alias1] LEFT OUTER JOIN Tablo_adı2 [Alias2] ON bağlantı_koş LEFT INNER JOIN işlemi daha iyi anlayabilmek için IL tablosunda 91 kodlu Yurtdışı iline bağlı bir ilçe olmadığına dikkat edelim. Bu durumda A.ILCEKOD, A.ILKOD, A.ILCEAD, B.ILAD IL B INNER JOIN WHERE (B.ILKOD = 91) ILCE A ON A.ILKOD = B.ILKOD SQL deyimi hiçbir sonuç vermeyecektir. Çünkü ILCE tablosunda ILKOD u 91 olan bir ilçe yoktur. Çoğu kez sonuç kümesinin Yurtdışı ilini içermesi istenen bir birleştirme işlemi yapmak gerekir. Bu durumda LEFT (veya RIGHT) JOIN işlemi kullanılır. Buna örnek verelim. A.ILCEKOD, A.ILCEAD, B.ILKOD, B.ILAD IL B LEFT OUTER JOIN WHERE (B.ILKOD = 91) ILCE A ON A.ILKOD = B.ILKOD

ILCEKOD ILCEAD ILKOD ILAD <NULL> <NULL> 91 Yurtdışı Burada iki tabloyu bağlama işlemi IL <---------------- ILCE IL LEFT OUTER JOIN ILCE Şeklindedir. Bu nedenle ilişkinin sol tarafında bulunan tabloya ait tüm bilgiler geldiği halde diğer tabloya ait 91 yabancı anahtarlı bilgiler olmadığından kolon değerleri NULL olarak sonuçlandırılmıştır. A.ILCEKOD, A.ILCEAD, B.ILKOD, B.ILAD IL B LEFT OUTER JOIN ILCE A ON A.ILKOD = B.ILKOD WHERE (B.ILKOD IN (91, 69)) ILCEKOD ILCEAD ILKOD ILAD 6900 Bayburt 69 Bayburt 6901 Aydıntepe 69 Bayburt 6902 Demirözü 69 Bayburt <NULL> <NULL> 91 Yurtdışı Aşağıdaki örneği dikkatle inceleyelim: B.ILKOD, B.ILAD IL B LEFT OUTER JOIN ILCE A ON A.ILKOD = B.ILKOD WHERE (A.ILKOD IS NULL) Sonuç : ILKOD ILAD

90 K. K. T. C. 91 Yurtdışı Yukarıdaki SQL ifadesi IL tablosunda olup da ILCE tablosunda ILKOD karşılığı olmayan tüm satırları içeren sonuç kümesini verir. Neden? Bu örnek LEFT OUTER JOIN işleminin ne kadar yararlı olabileceğini göstermektedir. RIGHT OUTER JOIN operatörü Tablo_adı1 [Alias1] RIGHT OUTER JOIN Tablo_adı2 [Alias2] ON bağlantı_ko Bu işlem LEFT OUTER JOIN işlemi ile tamamen aynidir. Fakat bu durumda sağda bulunan tabloya ait tüm sonuçlar sonuç kümesine dahil edilir. SQL UNION ve UNION ALL UNION UNION deyimi iki tablodan birbiriyle ilgili is bilgiyi seçmekte kullanılır. Bunun genel yapısı aşağıdaki şekildedir. : SQL İfade 1 UNION [ALL] SQL İfade2 Burada SQL İfade 1ve SQL İfade 2 değişik tablolarda ayni veri tipli kolonları seçen SQL deyimleridir. Not : UNION ile sadece listede geçen farklı değerler kümesini seçer. ILKOD IL

WHERE (ILKOD<=5) UNION ILKOD ILCE WHERE (ILKOD>3 AND ILKOD<7) ILKOD 1 2 3 4 5 6 UNION all UNION deyimi ile aynidir. Fakat bu durumda farklı sonuçlar yerine tüm sonuçlar seçilir. ILKOD IL WHERE (ILKOD<=5) UNION ALL ILKOD ILCE WHERE (ILKOD>3 AND ILKOD<7)