Bazı sistem fonksiyonları;
İdentity:En son girilen
kayıt numarasını gösterir. Örneğin 7 kayıt girdik identity koşuluyla birlikte 7
kayıt gösterir.
Kullanımı: select @@identity
from <tablo_adı>
Rowcount: Koşula uyan
kayıt sayısını gösterir.
Kullanımı: select
@@rowcount from <tablo_adı>
Örnek:
select * from muhasebe
where cinsi like '%a%'
select @@rowcount
--Burada cinsi alanında içinde a harfi olan kayıtların
kayıt sayısını gösterir.
-Print:Sonucu mesaj olarak göstermemizi sağlar.
Kullanımı:declare@<değişken_adı><veri
tipi>
Select @<değişken adı>
<sql fonksiyonu> from <tablo_adı>
print@<değişen_adı>
Örnek:
declare @kayitsayisi int
select * from muhasebe
print @kayitsayisi
Örnek:
declare @kayitsayisi int
select * from muhasebe
set @kayitsayisi=@@rowcount
select 'kayit sayisi:'+cast(@kayitsayisi as varchar(20))
as kayit
--Burada kayitsayisi adında değişken tanımlayıp rowcountun
değerini atıyoruz. Daha sonra ‘kayitsayisi:….’şeklinde yazdırmak için veri
tipini değiştiriyoruz ve kayit adı altında ekranda görüntülüyoruz.
o Başka bir
örnek;
declare @degisken varchar(20)
select @degisken='11 g sınıfı'
print '1.batch sonu'
print @degisken
print '2.batch sonu'
print '3.batch sonu'
go
--Burada degisken adında bir değişken tanımlıyoruz. Ve
değişkeni görüntülüyoruz.
--Go koşulunu koymayı
unutmuyoruz.
-Case:Bir değere göre daha fazla alternatifi yerine
getirmemizi sağlar.
Kullanımı: Case
<değer>
When <değer> then
<işlem>
When <değer> then
<işlem>
Else < işlem>
End
Örnek:
select cinsi, aciklama=case fiyat
when 1 then 'ucuz'
when 3 then 'orta'
when 15 then 'pahalı'
else
'belirtilmemis'
end
from muhasebe
--Burada kayıtlara bakarak
1ise ucuz, 5 ise orta, 10 ise pahalı yazıdırıyoruz. Farklı kayıt varsa
belirtilmemiş yazdırıyoruz.
Örnek:
select cinsi, aciklama=case
when fiyat<5 then '5den az'
when fiyat=5 then '5e esit'
when fiyat >5 then '5den buyuk'
end
from muhasebe
--Burada fiyat 5ten küçükse ‘5den az’, 5e eşitse ‘5e
esit’, 5ten büyükse ‘5den buyuk’ şeklinde yazdır diyoruz.
Mod:Sayının modunu alır.
Örnek:
select cinsi,fiyat,aciklama=case fiyat %3
when 1 then 'bir'
when 2 then 'iki'
else 'sıfır'
end
from muhasebe
select cinsi,fiyat,aciklama=case fiyat %2
when 1 then 'tek'
when 0 then 'cift'
else 'sıfır'
end
from muhasebe
--Burada fiyatın 2 ye modunu alıyoruz. Sonuç 1 ise ‘tek’,
0 ise ‘cift’ başka bir değer ise ‘sıfır’ yazıdırıyoruz.
Floor:Sayının
ondalıklı tarafını atar, tamsayıya dönüştürür.
Örnek: select floor(fiyat) from muhasebe
--Fiyatın ondalıksız halini gösterir.
Örnek: --fıyat alanı tam sayı ıse ondalıklı sayı ıse
ondalıklı yazıdırınız.
select cinsi,fiyat,aciklama=case
when floor(fiyat) = fiyat then 'kusuratsız'
else 'ondalıklı'
end
from muhasebe
--Burada floor şartıyla fiyat,fiyatın normal kayıdıyla
aynıysa küsuratsız değilse ondalıklı olduğunu belirtiyoruz.
Hiç yorum yok:
Yorum Gönder