![]() |
![]() |
|
![]() | #1 | |
Çevrimdışı ![]() IF Ticaret Sayısı: (0) | ORDER BY ifadesi bu ifade ile sonucları sıralamak mumkundur. Satırları sıralamak için ifade şu şekilde kurulur; SELECT kolonAd(lar)i FROM tabloAdi ORDER BY referansKolonu örnek veri tabanımızda "bilgi" tablomuz olsun ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 veli sözcü trabzon 20 necmi yakan sivas 19 SELECT ad,soyad FROM bilgi ORDER BY ad dediğimizde sonuc ad soyad ----- ------- ali özgür necmi yakan veli sözcü eger sıralamayı tersine cevirmek istersek ifadenin sonuna DESC sözdizimini, sayıları kucukten buyuye sıralamak içinde ASC sözdizimini ekliyoruz. SELECT ad,soyad FROM bilgi ORDER BY ad DESC dediğimizde sonuc ad soyad ----- ------- veli sözcü necmi yakan ali özgür AND ve OR operatorlerinin kullanılısı AND ve OR operatorleri WHERE ifadesiyle birlikte, birden cok durumu birleştirmek için kullanılır. AND operatoru eger TÜM durumlar dogru ise ilgili satırı gosterir. OR operatoru ise durumlardan bir tanesi bile dogru olsa bile ilgili satırı gosterir. örnekleri "bilgi" adlı tablomuza gore vericek olursak ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 veli sözcü trabzon 20 necmi yakan sivas 19 osman yakan van 33 alp özgür ankara 12 SELECT * FROM bilgi WHERE ad=’ali’ AND soyad=’özgür’ dediğimizde sonuc ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 SELECT * FROM bilgi WHERE ad=’alp’ OR soyad=’özgür’ dediğimizde sonuc ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 alp özgür ankara 12 heriki operatorude birleştirecek olursak SELECT * FROM bilgi WHERE (ad=’alp’ OR ad=’ali’) AND LastName=’özgür’ dediğimizde sonuc ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 alp özgür ankara 12 IN operatorunun kullanılısı Bu operator, bir degeri tam biliyorsak ve bunu goruntulemek istiyorsak kullanabiliriz. ifadenin kurulusu; SELECT kolonAdi FROM tabloAdi WHERE colonAdi IN (degerBir,degerIki,...) örnek veritabanımızda "bilgi" tablomuz olsun ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 veli sözcü trabzon 20 necmi yakan sivas 19 osman yakan van 33 alp özgür ankara 12 SELECT * FROM bilgi WHERE il IN (’van’,’trabzon’) dedigimzde sonuc ad soyad il yas ----- ------- ---- ----- veli sözcü trabzon 20 osman yakan van 33 BETWEEN operatorunun kullanılısı Bu operator yardımı ile iki deger arasındaki veriyi secebiliriz, bu degerler numara,yazı yada tarih olabilir. ifadenin kurulusu; SELECT kolonAdi FROM tabloAdi WHERE colonAdi BETWEEN degerBir AND degerIki örnek veritabanımızda "bilgi" tablomuz olsun ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 veli sözcü trabzon 20 necmi yakan sivas 19 osman yakan van 33 alp özgür ankara 12 SELECT * FROM bilgi WHERE il BETWEEN ’trabzon’ AND ’van’ dediğimizde sonuc ad soyad il yas ----- ------- ---- ----- veli sözcü trabzon 20 necmi yakan sivas 19 Yanlız BETWEEN operatoru veritabanı cinsine gore degişik sonuclar verebilir. Yukarda oldugu gibi sonraki degeri sonuca dahil etmeyebilir, ilk degeri dahil etmeyebilir, iki degerden hiçbirini dahil etmeden sonuc verebilir yada iki degeride dahil edip sonucu verebilir. Bu yuzden etkili biçimde kullanmadan once bu operatorun tam olarak nasıl davrandıgını veritabanınızda denemeniz önerilir. Birde bu aralıkta olmayanlarıda listeleyebiliriz; ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 veli sözcü trabzon 20 necmi yakan sivas 19 osman yakan van 33 alp özgür ankara 12 SELECT * FROM bilgi WHERE il NOT BETWEEN ’trabzon’ AND ’van’ dediğimizde sonuc ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 osman yakan van 33 alp özgür ankara 12 ALIAS operatorunun kullanılısı Bu operator ile bir kolonun yada tablonun adı bir baska şeymiş gibi kullanılabilir. ifadelerin kurulusu; SELECT kolon AS kolonAliasi FROM tablo SELECT kolon FROM tablo AS tabloAliasi örnek veritabanımızda "bilgi" tablomuz olsun ad soyad il yas ----- ------- ---- ----- ali özgür ankara 15 veli sözcü trabzon 20 necmi yakan sivas 19 osman yakan van 33 alp özgür ankara 12 SELECT soyad AS aile, il AS yerleske FROM bilgi dediğimizde sonuc aile yerleske ----- -------- özgür ankara sözcü trabzon yakan sivas yakan van özgür ankara yada alias ı tablo için kullanabiliriz.. SELECT ad, soyad FROM bilgi AS nufusBilgileri ad soyad ----- ------- ali özgür veli sözcü necmi yakan osman yakan alp özgür SQL Join methodunun kullanılısı Bazen iki yada daha fazla tablodan veri cekmemiz gerekebilir, bu gibi durumlarda bu methodu kullanırız. Veritabanındaki tablolar, birbirleriyle bazı key lerle ilişkilendirilmiştir. İlk ve oncelikli (primary) key, satırlarda bulunan kolonla birlikte tek ve benzeri olmayan degerdir. İki verinin birbiriyle ilişkilendirilmesinin amacı tabloları aşıp, tablo isimlerini tekrarlamadan veriyi almaktır. veritabanımızda iki adet tablomuz olsun ilk tablo adımız "kisi" kisiID tamAdi ------ -------- 01 ali,özgür 02 veli,sözcü 03 necmi,yakan 04 osman,yakan 05 alp,özgür ikinci tablo adımız "detay" kimlikNo il kisiID -------- ---- ------ 4893 ankara 01 6889 trabzon 02 3684 sivas 03 5285 van 04 4234 ankara 05 "kisi" tablosundaki "kisiID" kolonu bir ilk ve oncelikli (primary) keydir. Bunun anlamı baska herhangi bir satır aynı degere sahip olamaz. Bu sayede diger kolonlarda aynı degeri bulunan veriler olsa bile bu key onları birbirinden ayırmakta kullanılabilir. "detay" tablosunun il ve oncelikli (primary) keyi "kimlikNo" dur. Ve "kisiID" kolonu "bilgi" tablosunu "detay" tablosuyla baska herhangi bir veri girmeden ilişkilendirmiştir. veritabanımıza birkac SQL tarzı soru soralım bakalım nasıl soruyoruz ve nasıl cevaplar alıyoruz Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir. İnsansı soru: kim nerde oturuyor? SQL tarzı soru(sorgu): SELECT kisi.tamAd, detay.il FROM kisi, detay WHERE kisi.kisiID=detay.kisiID Cevap: tamAdi il -------- ---- ali,özgür ankara veli,sözcü trabzon necmi,yakan sivas osman,yakan van alp,özgür ankara İnsansı soru: kim trabzonda oturuyor? SQL tarzı soru(sorgu): SELECT kisi.tamAdi FROM kisi, detay WHERE kisi.kisiID=detay.kisiID AND detay.il=’trabzon’ Cevap: tamAdi -------- veli,sözcü Bu işi birde JOIN sozdizimi kullanarak yapabiliriz. INNER JOIN operatorunun kullanılısı ifadelerin kurulusu; SELECT bolgiBir, bolgiIki, bolgiUc FROM ilkTablo INNER JOIN ikinciTablo ON ilkTablo.keyBolgesi = ikinciTablo.yabanciKeyBolgesi veritabanımızda iki adet tablomuz olsun ilk tablo adımız "kisi" kisiID tamAdi ------ -------- 01 ali,özgür 02 veli,sözcü 03 necmi,yakan 04 osman,yakan 05 alp,özgür 06 zeki,civi 07 alp,öztürk ikinci tablo adımız "detay" kimlikNo il kisiID -------- ---- ------ 4893 ankara 01 6889 trabzon 02 3684 sivas 03 5285 van 04 4234 ankara 05 ve sorularımıza INNER JOIN kullarak devam edelim.. İnsansı soru: kim nerde oturuyor? SQL tarzı soru(sorgu): SELECT kisi.tamAdi, detay.il FROM kisi INNER JOIN detay ON kisi.kisiID = detay.kisiID cevap: tamAdi il -------- ---- ali,özgür ankara veli,sözcü trabzon necmi,yakan sivas osman,yakan van alp,özgür ankara Bu method tablolardaki eşleşmiş her veriyi cıkartıcaktır, eger eşlenmemiş bir veri varsa onu cıkarmıyacaktır. LEFT JOIN operatorunun kullanılısı ifadelerin kurulusu; SELECT bolgiBir, bolgiIki, bolgiUc FROM ilkTablo LEFT JOIN ikinciTablo ON ilkTablo.keyBolgesi = ikinciTablo.yabanciKeyBolgesi veritabanımızda iki adet tablomuz olsun ilk tablo adımız "kisi" kisiID tamAdi ------ -------- 01 ali,özgür 02 veli,sözcü 03 necmi,yakan 04 osman,yakan 05 alp,özgür 06 zeki,civi 07 alp,öztürk ikinci tablo adımız "detay" kimlikNo il kisiID -------- ---- ------ 4893 ankara 01 6889 trabzon 02 3684 sivas 03 5285 van 04 4234 ankara 05 ve sorularımıza INNER JOIN kullarak devam edelim.. İnsansı soru: kim nerde oturuyor? SQL tarzı soru(sorgu): SELECT kisi.tamAdi, detay.il FROM kisi LEFT JOIN detay ON kisi.kisiID = detay.kisiID cevap: tamAdi il -------- ---- ali,özgür ankara veli,sözcü trabzon necmi,yakan sivas osman,yakan van alp,özgür ankara zeki,civi alp,öztürk | |
| ![]() |
![]() |
Etiketler |
birazda, ogrenelim, sql, öğrenelim |
Konuyu Toplam 1 Üye okuyor. (0 Kayıtlı üye ve 1 Misafir) | |
| |
![]() | ||||
Konu | Konuyu Başlatan | Forum | Cevaplar | Son Mesaj |
Farsça Öğrenelim | PySSyCaT | Yabancı Diller | 4 | 09 Kasım 2014 17:29 |
birazda SQL öğrenelim | SeckiN | Servisler | 0 | 07 Ekim 2013 13:09 |
Kur’an harflerinin okunuşlarını öğrenelim! | Sır | Kuran-ı Kerim | 0 | 24 Eylül 2011 01:59 |
Birazda PHP öğrenelim :) | hitman | PHP | 3 | 04 Mart 2006 17:40 |