Koçbey Forum Sayfası
Would you like to react to this message? Create an account in a few clicks or log in to continue.

Çeşitli Veri Tipleri için Basit Sorgulamalar

Aşağa gitmek

Çeşitli Veri Tipleri için Basit Sorgulamalar Empty Çeşitli Veri Tipleri için Basit Sorgulamalar

Mesaj  Mehmet Çarş. Haz. 04, 2008 1:03 pm

Nümerik veri tipi: Sayısal veri tipi, SMALLINT, INTEGER, DECIMAL, NUMERIC ve FLOAT tip bildiren sözcüklerde kullanılır.
Örnek : Brüt maaşı 800’den fazla olmayan personeli listeleyen program. ?
SELECT * FROM personel WHERE brüt <= 800;

Karakter (Char) veri tipi: Karakter türündeki veriler, çift tırnak (“ “), veya tek tırnak (‘ ‘) sembolleri içine yazılırlar. Bu tip veriler, rakamlardan oluşsa bile, matematiksel işlemler içinde kullanılamazlar.
Örnek : Adı ali olmayan personele ait kayıtları listeleyiniz?
SELECT * FROM personel WHERE ad <> “Ali” veya
SELECT * FROM personel WHERE ad != “Ali”;

Tarih veri tipi: Tarih tipli veriler { } sembolleri içine yazılmalıdır.
Örnek : Hangi personelin doğum tarihi 1979’dan daha öncedir?

Mantıksal veri tipi (lojik)
Mantıksal veriler 2 değer alır. Doğru (.T.true) ve yanlış (.F.false)
Örnek : Personel tablosundaki erkek elemanları listeleyiniz?
Not: Tabloda personelin cinsiyetini belirten cins adlı alan mantıksal türde tanımlanmıştır.
SELECT * FROM personel WHERE cins = .T. ;veya
SELECT * FROM personel WHERE cins;
Bu durumda cins alanında .T. olanlar listelenecektir.

BİRDEN ÇOK KOŞULA BAĞLI SORGULAMALAR NOT-AND-OR


Bu operatörlerle birden çok koşula bağlı listelemeler yapılabilir.
Örnek : Maaşı 500’dan fazla ve cinsiyeti erkek olan personelin listeleyiniz. ?
SELECT * FROM personel WHERE brut > 500 AND cins=. T. ;
Her iki koşulunda aynı anda gerçekleşmesi istendiğinde AND sözcüğü kullanılmıştır.

Aşağıda örnek sorularla, mantıksal işlem operatörlerinin kullanımı konusunda fikir verilmektedir.
Örnek : Bölümü satış veya muhasebe olan kadın personelini listeleyiniz?. Satış bölümünün bölüm numarası 1 ve muhasebe bölümünün bölüm numarası 2 olduğunu varsayarsak:
SELECT * FROM personel WHERE (bolumno = 1 OR bolumno = 2)AND cins = . F. ;
Örnek : Satış bölümü ile muhasebe bölümündekiler kimlerdir?
SELECT * FROM personel WHERE (bolumno = 1 OR bolumno = 2);
Örnek : Bölümü satış yada muhasebe olmayan, 1978’den sonra doğmuş bayan personeli listeleyiniz?
SELECT * FROM personel WHERE NOT (bolumno = 1 OR bolumno = 2) AND
dogumtrh &gt;= {01/01/78}AND cinsiyet = . F. ;

BİR VERİ KÜMESİ İÇİNDE ARAMA-IN OPERATÖRÜ
Aşağıdaki örnek sorunun cevabını şu ana kadar öğrendiğimiz SQL komutları ile gerçekleştirebiliriz.
Örnek : Bölüm numarası 1, 2 yada 3 olan personelleri listeleyiniz?
SELECT * FROM personel WHERE bolumno = 1 OR bolumno = 2 OR bolumno = 3;
Fakat SQL’de bu işlemi gerçekleştirmenin daha kısa bir yolu vardı. IN sözcüğünü kullanarak yazacağımız :
SELECT * FROM personel WHERE bolumno IN (1, 2, 3);
Şeklindeki komut OR ile düzenlenen 1. SELECT’le aynıdır.

ARALIK SORGULAMASI (BETWEEN)Örnek : Maaşı 5-10 Milyon arasında olan personel kimlerdir ?
1-) SELECT * FROM personel WHERE brüt &gt;= 50000000 AND brüt <= 100000000;
Şeklindeki bir SELECT komutu cevap verebilir. Aynı soruya daha kısa bir şekilde BETWEEN sözcüğü ile cevap verilebilir.
2-) SELECT * FROM personel WHERE brüt BETWEEN 50000000 AND 100000000;

KARAKTER TÜRÜ BİLGİ İÇİNDE ARAMA YAPMA LİKE SÖZCÜĞÜ
Personel tablosu içinde adres adlı 50 karakterlik bir bilgi olduğunu varsayalım. Adres değişkeni içerisinde belirli bir semtte ikamet eden personeli listelemek istediğimizde şu satırları yazabiliriz.
SELECT * FROM personel WHERE adres LIKE ‘%küçük çekmece%’;
Bu komut ile küçük çekmece de oturanları listelemektedir. Yalnız bu komut ile sadece semti değil bütün adresi listeleyecektir. Burada yapılan işlem, küçükçekmece sözcüğünü aramaktır.
% sembolü içinde küçük çekmece sözcüğünün öncesi ve sonrasındaki karakterler ne olursa olsun anlamındadır.');
Mehmet
Mehmet

Mesaj Sayısı : 120
Kayıt tarihi : 20/05/08

http://www.kocbey.com

Sayfa başına dön Aşağa gitmek

Sayfa başına dön

- Similar topics

 
Bu forumun müsaadesi var:
Bu forumdaki mesajlara cevap veremezsiniz