15 Mart 2012 Perşembe

Oracle ile Sql' e Giriş Ders 5

--SELECT * FROM personel
--like
--ÖRN:
--SELECT * FROM personel where ad like 'A%'
--SELECT * FROM personel where ad like '%AY%'
--SELECT * FROM personel where ad like '%AY'
--SELECT * FROM personel where ad not like '%Lİ'

--IN
SELECT * FROM personel WHERE BOLUM IN('İK','FİNANS')      -- SELECT * FROM personel WHERE BOLUM='İK' OR BOLUM='FİNANS'
SELECT * FROM personel WHERE BOLUM NOT IN ('İK','FİNANS') -- SELECT * FROM personel WHERE BOLUM<>'İK' AND BOLUM<>'FİNANS'

--BETWEEN
--sayısal ve tarih alanları için kullanılır.
SELECT * FROM PERSONEL WHERE MAAS BETWEEN 1000 AND 2000   --SELECT * FROM PERSONEL WHERE MAAS>=1000 AND MAAS<=2000
SELECT * FROM PERSONEL WHERE DOGUM_TARIHI BETWEEN '01.01.1970' AND '01.01.1980'

--GROUP BY
SELECT AD,COUNT(*) FROM PERSONEL GROUP BY AD
SELECT BOLUM,SUM(MAAS) FROM PERSONEL GROUP BY BOLUM

--HAVING
SELECT AD,COUNT(*) FROM PERSONEL GROUP BY AD HAVING COUNT(*)>1
SELECT BOLUM,SUM(MAAS) FROM PERSONEL GROUP BY BOLUM HAVING SUM(MAAS)>3000


--UNION
SELECT * FROM personel WHERE ad='AHMET'
UNION
SELECT * FROM personel WHERE ad='AYŞE'
UNION
SELECT * FROM personel WHERE ad='ALİ'


--UNION ALL
SELECT * FROM personel WHERE ad='AHMET'
UNION ALL
SELECT * FROM personel WHERE ad='ALİ'

Not: Union ile union all arasındaki fark, union distinct yapar, union all tamamını getirir.

--MINUS
--1.de olup ikincide olmayan kayıtlar
SELECT * FROM personel
MINUS
SELECT * FROM personel WHERE ad='ALİ'


--INTERSECT
--kesişim olan kayıtlar
SELECT * FROM personel
INTERSECT
SELECT * FROM personel WHERE ad='ALİ'


Hiç yorum yok:

Yorum Gönder