Like Joker Karakterler, Order By, Group By

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

Ü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

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

Veritabanı. SQL (Structured Query Language)

Veri Tabanı Tasarım ve Yönetimi

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

SQL Komutları (2) Uzm. Murat YAZICI

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

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

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

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

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

VERİTABANI Veritabanı Sorgulama

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

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

VERİTABANI ve YÖNETİMİ

VERİTABANI. SQL (Structured Query Language)

Veritabanı ve Yönetim Sistemleri

Yapısal Sorgulama Dili (SQL)

Bilgisayar Uygulamaları. MySql

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

Fonksiyonlar, Count, Sum, Avg, Max, Mın, Lower, Upper, Length, Round, Mod, Left, Right, Concat, If

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

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

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

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

SQL Kod ile Tablo Oluşturma

Veri Tabanı-I 9.Hafta

Veri Tabanı-I 12.Hafta

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.

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ü

SQL (Structured Query Language)

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

YAPISAL SORGULAMA DİLİ (SQL)

SQL (Structured Query Language)

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

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

SQL DİĞER Deyimler ve Komutlar

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.

Emrah UYSAL 1

Veri Tabanı Programlamaya Giriş

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

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

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

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

İNTERNET TABANLI PROGRAMLAMA- 12.ders

Veri Tabanı II Alt Sorgular

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

Veri Tabanı Hafta Dersi

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

13 Aralık Đlgili Versiyon/lar : ETA:SQL, ETA:V.8-SQL. Đlgili Modül/ler : Raporlar. Kullanıcı Tanımlı Raporlar Bölümünden Yapabildiklerimiz

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

15 Aralık 2011 / Perşembe.

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

BÖLÜM13 3- EXCEL DE VERİ İŞLEMLERİ

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

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

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

SQL e Giriş. Uzm. Murat YAZICI

Veritabanına Uygulanması

İlişkisel Veri Tabanları I

1. Hafta MS SQL Server 2008 Kurulum ve Tanıtımı BPR255 Veritabanı. Bu Derste Öğrenecekleriniz: Kurulum:

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

EBE-368 Veri Tabanı Yönetim Sistemleri SQL

Çok tablolu sorgulamalar

Veritabanı Tasarımı. Düzenli İfadeler

BÖLÜM 11. YAPISAL SORGULAMA DİLİ (SQL) Amaçlar:

Veri Tabanı SQL Server ve Management Studio kurulum linkleri:

5 Sorgulama İşlemleri. Veritabanı 1

Nesne Oluşturmak: CREATE CREATE ifadesi ile veritabanındaki nesnelerden herhangi birisi oluģturulabilir.

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

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

SQL PROGRAMLAMA. Bir batch, bir arada bulunan bir dizi SQL deyimidir. Batch ayıracı GO deyimidir.

İşletim Sistemi. İşletim Sistemi

Maltepe Üniversitesi Endüstri Mühendisliği Bölümü Veri Tabanı Yönetimi (END 210)

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

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

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

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

ACCESS PLATFORMUNDA SQL

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

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

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

Veritabanı Yönetim Sistemleri (Başarım Eniyileme Performance Tuning)

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

Birden Çok Tabloda Sorgulama (Join)

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.

5 Sorgulama İşlemleri. Veritabanı 1

Mysql Veritabanı Komutları

SQL Query and Table Application

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

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

Bağlantılar dışarıdan alınan verilerin (bu farklı Excel dosyası da olabilir) özelliklerini düzenlemek ve verilerin son halini almak için kullanılır.

BİLİŞİM TEKNOLOJİLERİ

SELÇUK ÜNİVERSİTESİ BOZKIR MESLEK YÜKSEKOKULU VERİTABANI-II DERSİ FİNAL SINAVI

BİLİŞİM TEKNOLOJİLERİ

Veritabanı Tasarımı. SQL Deyimi Anatomisi

Transkript:

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 olsun. Adres bilgisinin aşağıdaki şekilde verildiğini varsayalım: Cumhuriyet Cad. 46/9 Taksim/İSTANBUL Burada, adres içinde, semtinde belirtildiğini ve bunun ayrı bir sütun (alan) 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 SQL de LIKE sözcüğü kullanılır. Aşağıdaki SELECT komutunu inceleyelim: SELECT * WHERE adres LIKE %Taksim% ; Bu komut ile Taksim semtinde ikamet eden personel listelenmek istenmektedir. Bu komut gerçektende Taksim de oturan kişileri listeleyecektir. Ama bu arada Taksim Caddesi 22-7 Kadıköy - İST şeklindeki adresleri de listeleyecektir. adres LIKE %Taksim% ifadesi, adres içinde Taksim i arayacaktır. Adres içinde, herhangi bir yerde, bulduğu takdirde, bu satırı (bu kayıt, personeli) listeleyecektir. % sembolü, Taksim sözcüğünün öncesi ve sonrasındaki karakterler ne olursa olsun anlamındadır. LIKE sözcüğünü, alt çizgi ( _ ) sembolü ile birlikte kullanmak da mümkündür. ÖRNEK: SELECT * WHERE ad LIKE Mehmet---- ; şeklindeki komut ile ad alanı Mehmet ile başlayan ve ad alanı uzunluğu 10 karakter olan isimlere sahip personeli listeleyecektir. Mehmet Ali, Mehmet Can, Mehmetcik gibi isimler listelenecektir. Anlaşılacağı gibi - sembolü, tek karakterlik bir bilgiyi temsil etmektedir. Joker Karakterler %: Birden fazla harf veya rakamın yerini tutar. *: Bazı sistemlerde, birden fazla harf ve rakam yerini tutar. _: Bir tek harf veya rakam yerini tutar (Bir çok sistemde)?: Bir tek harf veya rakam yerini tutar (Bazı diğer sistemlerde) Like Joker Karakterler, Order, Group 1

[ABC]: Herhangi bir harf yerine gelebilecek harfleri belirtir.(sqlserver,sybase) [^ABC]: Herhangi bir harf yerine gelemeyecek harfleri belirtir.(sql Server, Sybase) Tablo Bilgilerinin Sıralanmış Olarak Listelenmesi Tablodan listelenecek bilgilerin, belirli bir sütun adına göre (ad a göre v.b.) sıralanmış olarak görüntülenmesi için, SELECT komutuna ORDER BY sözcüğü ilave edilir. ÖRNEK: Personel isimli bir tabloda sicil, ad, soyad, maas sütunları olsun. Maaşa göre artan sırada (küçükten büyüğe doğru) sıralı olarak listeleyiniz. 2746 Ali Can 7800000 1728 Ayşe Şener 5600000 1116 Mert Okan 8950000 1022 Melih Berkan 7500000 ORDER BY maas ASC; SONUÇ: 1728 Ayşe Şener 5600000 1022 Melih Berkan 7500000 2746 Ali Can 7800000 1116 Mert Okan 8950000 ASC sözcüğü ascending (artan) anlamındadır. Veriler azalan sırada (büyükten küçüğe ya da alfabetik olarak Z den A ya doğru) sıralamak için ASC yerine DESC (descending) sözcüğü kullanılmalıdır. Birden Çok Alana Göre Sıralama Bir tablo içinde verilerin aynı anda birden çok sütun (alana) göre sıralamakta mümkündür. Örneğin Personel tablosunu ad ve maas alanlarına göre sıralamak isteyelim. ORDER BY ad,brüt; Burada tablo öncelikle ad a göre artan sırada (A dan Z ye doğru) sıralanacak, sadece aynı ad a sahip olanlar kendi aralarında maas a göre küçükten büyüğe (artan) sıralanacaktır. Like Joker Karakterler, Order, Group 2

1215 Ali Can 2000000 3712 Ali Okan 6000000 1152 Ali Mert 8000000 3712 Birol Akın 4000000 8145 Birol Çelen 8500000 1248 Birol Okur 11000000 Şekil 2.1 Ad ve Maaş a Göre Sıralama. Burada, çok sayıda alana göre sıralama, farklı sıralama kriterlerine göre gerçekleştirilebilir. Örneğin aşağıdaki SELECT komutu ile ad alanına göre artan, soyad alanına göre azalan, maas alanına göre artan sıralanmış tablo elde edilmektedir. ORDER BY ad ASC,soyad DESC,maas ASC; veya aynı komut için alternatif yazılış: ORDER BY ad,soyad DESC,maas; şeklinde olacaktır. Örnek çıktı aşağıdaki gibidir. 2742 Ahmet Kaner 8000000 1712 Ahmet Kaner 16000000 3112 Ahmet Berk 17000000 2712 Melih Caner 12000000 1317 Melih Berat 18000000 2718 Zerhan Şen 7000000 Şekil 2.2 Ad a Göre Artan, Soyad a Göre Azalan, Maaş a Göre Artan Sıralama. 3.3 Gruplandırarak İşlem Yapma SUM, AVG, MAX, MIN, COUNT fonksiyonları, tablodaki bilgileri, bazı özelliklere göre gruplandırarak bu gruplandırılmış veri üzerine de uygulamak mümkündür. Bu işlem, GROUP BY sözcükleri yardımı ile gerçekleştirilebilir. Örneğin, aşağıdaki soru bu konuda bir fikir verecektir: SORU: Her bölümdeki ortalama maaş nedir? Burada istene, bölümler bazında ortalama maaş olduğuna göre, personel tablosundaki satırlar, bölüm numaralarına göre (bol_no) gruplandırarak, her bir grubun maaş ortalaması ayrı ayrı hesaplanarak listelenebilir. Aşağıdaki SELECT komutu bu işlemi gerçekleştirmektedir. SELECT bol_no,avg(maas) GROUP BY bol_no; Like Joker Karakterler, Order, Group 3

SONUÇ: bol_no AVG(maas) ------------- --------------- 1 2500000 2 6800000 3 7400000 4 12500000 Her bölümdeki en yüksek maaşı alan kişiler listelenmek istenirse, aşağıdaki komut kullanılabilir: SELECT bol_no,max(maas),ad,soyad GROUP BY bol_no; Personel tablosundaki bilgiler maas ad soyad bol_no 5000000 Ali Can 1 3000000 Ayşe Okan 1 8000000 Akın Oran 2 10000000 Yeşim Şensoy 2 şeklinde ise, yukarıdaki SELECT komutunun çıktısı; bol_no Max_maas ad soyad 1 5000000 Ali Can 2 10000000 Yeşim Şensoy şeklinde olacaktır. Gruplandırarak, kümeleme fonksiyonlarını uygularken, koşul da verilebilir. Bu durumda, grup üzerindeki hesaplamalarla ilişkili koşul belirtirken, HAVING sözcüğü kullanmak gerekir. Aşağıdaki örnek soru, bu konuda fikir vermektedir. SORU: En yüksek maaşın, 9000000 dan fazla olduğu bölümlerdeki personele ait ortalama maaşları listeleyiniz. ÇÖZÜM: SELECT bol_no,avg(maas) GROUP BY bol_no HAVING AVG(maas)>9000000; Like Joker Karakterler, Order, Group 4

Personel tablosunda aşağıdaki veri mevcut olsun:... bol_no... maas 1 6000000 1 17000000 2 7500000 2 8000000 3 12000000 3 11000000 1 14000000 1 18000000 Yukarıdaki SELECT komutu sonucunda bol_no AVG_maas 1 13750000 3 11500000 tablosu elde edilecektir. HAVING sözcüğü, SELECT komutunda GROUP BY sözcükleri bulunmadığı zaman, geçersizdir. HAVING sözcüğünü izleyen ifade içinde, SUM, COUNT (*), AVG, MAX ya da MIN gibi kümeleme fonksiyonları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. SORU: Personel tablosu içinde, her bölümde, erkek personele ait maaşlar için, ortalamanın 9000000 den fazla olduğu bölümleri listeleyiniz. ÇÖZÜM: SELECT bol_no,avg(maas) WHERE cinsiyet=.t. GROUP BY bol_no HAVING AVG(maas)>9000000; Personel tablosunda aşağıdaki bilgiler olsun:... bol_no maas cinsiyet... 1 6000000.T. 1 17000000.F. 2 7500000.F. 2 8000000.F. 3 12000000.T. 3 11000000.F. 1 14000000.T. 1 18000000.T. Yukarıdaki uygulanan SELECT komutu, her bölümdeki erkek personele ait ortalama maaşı hesaplayacak (erkek personel.t. ile belirtilmiştir) ve erkek personel maaş ortalaması, 9000000 den olan bölümler listelenecektir. Komutun çıktısı, aşağıdaki gibidir. Like Joker Karakterler, Order, Group 5

bol_no AVG_maas 1 12666666.67 3 12000000 Like Joker Karakterler, Order, Group 6