SELECT İFADELERİ DEVAM

     
 Veri tabanımızda employees isminde bir tablomuz var ve biz bu tablo üzerinde ufak tefek alıştırmalar yapacağız :)


Tablomuz bu şekilde gidiyor aşağıya doğru..

Başlayalım. 

          WHERE KELİMESİYLE SINIRLAMALAR

     
Bir sayı değerine göre sınırlama.

    SELECT employee_id, last_name, job_id,   department_id FROM   employees
  WHERE  department_id = 90 ;

 Yukarıdaki ifade de employees tablomuz da ki employee_id, last_name, job_id,
department_id sütunlarını çağırdık.Where kelimesiyle de bir sınırlama yaptık ve department_id sütununda 90 verisi olan  satırları çağırmış olduk. 

Karaktere göre sınırlama.

           SELECT employee_idlast_namejob_id,   department_id FROM   employees
  WHERE  last_name = 'King' ;

 Bu ifade de last_name sütununda King verisi olan satırları çağırdık.Burada dikkat etmemiz gereken küçük büyük harf duyarlılığı. KİNG , king KiNg vb. yazarsak istediğimiz tabloyu elde EDEMEYİZ.Tarih verileri de bu şekilde sınırlandırılabilir.


        KARŞILAŞTIRMA KOŞULLARI


  •    =       eşittir
  •    >       büyüktür
  •    >=     büyüktür veya eşittir
  •    <       küçüktür
  •    <=    küçüktür veya eşittir
  •    <>    eşit değildir 




  • BETWEEN  ...AND...
  • IN(set)                
  • LIKE
  • IS NULL
  • AND
  • OR
  • NOT




Karşılaştırma koşullarını kullanalım..




  • Aşağıdaki ifade de Salary 4400 e eşit veya küçükse gösterir.


  SELECT last_name, salary
FROM   employees WHERE  salary <= 4400;



  • Aşağıdaki ifade de salary 2600 ile 4400 arasında ise gösterir.(2600 ve 4400 dahil)


   Select * from hr.employees where salary between 2600 and 4400;



İsimler için de BETWEEN kullanılabilir. Aşağıdaki ifade de 'A' harfi ile 'K' harfi arasında olan isimleri bulmaktadır. Büyük küçük karaktere dikkat edilmelidir.
Select * from employees where last_name between 'Altin' and 'Kadir';


  • Aşağıdaki ifade de salary değeri 4400, 2600 , 8300 olanları gösterir.


   Select * from hr.employees where salary in(4400,2600,8300);




  • Aşağıdaki ifade de S harfi ile başlayan ve devamı olan isimleri verir.



  SELECT  first_name FROM   employees
WHERE  first_name LIKE 'S%';
* Küçük harf ve büyük harfe dikkat etmek gerekir.


  • Aşağıdaki ifade de soldan sağa doğru ikinci harfi 'o' olanları gösterir.
-->İki tane alt çizgi(__) koysaydık üçüncü harfi 'o' olanları gösterirdi.
-->'%' işareti solda olsaydı ('%o_') sağdan sola doğru ikinci harfi 'o' olanları gösterirdi.


  SELECT last_name FROM   employees
WHERE  last_name LIKE '_o%';


  • Aşağıdaki ifade de manager_id si null olanları gösterir.



  SELECT * FROM   employees 
WHERE  manager_id IS NULL;



  • Aşağıdaki ifade de salary 1000 e eşit veya büyük olanlar VE job_id sinde 'MAN' sözcüğü olanları gösterir.



SELECT * FROM employees WHERE salary >=10000 
AND job_id LIKE '%MAN%';


  • Aşağıdaki ifade de salary 1000 e eşit veya büyük olanlar VEYA job_id sinde 'MAN' sözcüğü olanları gösterir.


SELECT * FROM employees WHERE salary >= 10000
OR  job_id LIKE '%MAN%';


  • Aşağıdaki ifade de job_id si 'IT_PROG', 'ST_CLERK', 'SA_REP' olanları göstermez.


SELECT * FROM   employees WHERE  job_id
NOT IN ('IT_PROG', 'ST_CLERK', 'SA_REP');



  • Aşağıdaki ifade de Job_id si 'SA_REP' olanlar veya job_id si 'AD_PRES'  ve salary değeri 1500 den büyük olanları gösterir.



SELECT last_name, job_id, salary
FROM   employees  WHERE  job_id = 'SA_REP'
OR  job_id = 'AD_PRES' AND   salary > 15000;


  • Aşağıdaki ifade de Job_id si 'SA_REP' veya job_id si 'AD_PRES'  olanlar ve salary değeri 1500 den büyük olanları gösterir.


SELECT last_name, job_id, salary
FROM   employees WHERE  (job_id = 'SA_REP'
OR     job_id = 'AD_PRES')
AND    salary > 15000;

Hiç yorum yok:

Yorum Gönder