ORKESTRA

ORKESTRA

  orkestra orkestra.com.tr
  Sohbet   İndirme Merkezi

SQL İçinde Tanımlı Komutlar Ve Hesaplamalar

SQL sorgu sayfasında herhangi bir boşluk alandayken Ctrl+Space bastığımız zaman Orkestra bize o noktada yazılabilecek muhtemel komutları getirir.

SQL Komutlar

Burada istediğimiz gibi matematiksel ya da Excel den hatırladığımız başlıca fonksiyon komutlarını yazabiliriz.
Burada bunların hepsini değil ama belli başlı birkaç tane komutun kullanımını kısaca anlatacağız.


 


SAYI KOMUTLARI

Komut İsmi Örnek Kullanımı Açıklaması
avg avg yas as YAS_ORTALAMA group by ile gruplama varsa, ilgili verilerin yaş değerlerinin ortalamasını alır.
Burada “yas” değişkenlerinin aritmetik ortalaması hesaplanacaktır.
cos
sin
tan
cos(açi_deger) as COS
sin(açi_deger) as SIN
tan(açi_deger) as TAN
Bunlar trigonometrik fonksiyonlar olup, ilgili açının karşılık trigonometrik değerini verir.
count count(cari.reference) as FIRMA_SAY group by ile gruplama yapıldığı zaman, o gruplama özelliğine sahip kaç veri olduğunu sayısal olarak verir.
Burada oluşturulma zamanlarına göre gruplanmış bir sorgu için farklı zamanlara göre gruplanan verilerin sayısını verir.
count distinct count(distinct cari.reference) as FIRMA_SAY Aynı kaydın birden fazla gelmesi durumunda sadece farklı olan kayıtların sayısını verir.
max
min
max(kisi.maas) as EN_YUKSEK_MAAS
min(kisi.maas) as EN_DUSUK_MAAS
group by ile gruplama yapılan bir tabloda en yüksek ya da en düşük maaşı getirir.
round round(satir.vat.vatAmount,2) Bir değerin istenilen hassasiyetle ondalık hassasiyetine yuvarlar.
Burada, satırdaki KDV miktarının hassasiyetini düşürerek, virgülden sonra 2 basamak olacak şekilde gösterir.
sum sum(urun.totalOnHand) as ELDEKI_URUN

Toplam komutudur. Sayısal değerleri toplar.
group by ile gruplama yapıldığı zaman, ilgili gruba göre eldeki ürünlerin toplamını verir.

abs abs()

Verilen değerin mutlak değerini döndürür.

mod mod(15,7)

Girilen değerlerin mod unu gösterir. Verilen örnekte 15 sayısının 7 ye bölümünden kalan 1 değerini döndürür.

sqrt sqrt()

Verilen sayının karekökünü döndürür.

cast Veri tipini değiştirir. Detaylı bilgi için tıklayın.

 


 

METİN KOMUTLARI

Komut İsmi Örnek Kullanımı Açıklaması
coalesce coalesce(urun.priceList, urun.priceDefault) as FIYAT Verilen değerlerden NULL olmayanı döndürür.
Burada “Liste Satış Fiyatı” var ise onu yoksa Varsayılan Fiyatı döndürür.
concat concat('EK_',stok.reference) as EK_NO Verilen metinleri birleştirir.
İşlem sonunda hücrede “EK_846” gibi bir değer gösterir.
length length(cari.description) as UZUNLUK Cari Firmanın açıklama kısmının kaç karakterden oluştuğunu tamsayı olarak bize verir.
slist slist(amortisman.calcMethod) as HESAPLAMA_YONTEMI Index değerlerinin karşılığını verir.
case komutuyla her bir integer değerinin karşılığını yazmak zorunda kalmazsınız.
tostring tostring(cari) as CARI_HESAP tostring komutuyla sorgunun çıktısında Cari Hesap varsa açıklama yoksa kodu yazdırılır.
substring  substring(v.voucherNo,1,5) Metin içerisinden alt metin oluşturur. Örnekte Fiş Numarasını 1. karakterden başlayarak 5 karakteri döndürür.
trim trim(party.description) İlgili alandaki metnin başında ve sonunda olan boşlukları temizler.
nullif nullif(v.voucherNo,v.docNumber) Verilen iki değer aynı ise NULL, değil ise ilk değeri döndürür,
cast Veri tipini değiştirir. Detaylı bilgi için tıklayın.

 

 


 

TARİH KOMUTLARI

Komut İsmi Örnek Kullanımı Açıklaması
day
month
year
day(cari.creationTime) as GUN
month(cari.creationTime) as AY
year(cari.creationTime) as YIL
Verinin oluşturulma zamanının gününü, ayını ya da yılını sayı olarak veren komuttur.
Sorgu sonucunda 28, 6 ya da 2018 gibi veriler görünür.
hour
minute
second
hour(cari.creationTime) as SAAT
minute(cari.creationTime) as DAKIKA
second(cari.creationTime) as SANIYE
İlgili Cari Firmaların oluşturulma zamanlarını saat, dakika, saniye olarak bize verir. Sonuç tamsayı olarak gelir.
week week(v.voucherTime) Verilen DateTime değerinin hafta bilgisini döndürür.
dayofweek dayofweek(v.voucherTime) Verilen DateTime değerinin hafta günü bilgisini döndürür.
dayofyear dayofyear(v.voucherTime) Verilen DateTime değerinin yıl günü bilgisini döndürür.
date_format() date_format(vouchertime, '%Y-%M') as YIL_AY
date_format(daterangebegin(0, 'day'), '(%Y) %d.%m') as TARIH
date_format() fonksiyonunun birkaç farklı kullanımı vardır. date_format(vouchertime, '%Y-%M') as YİL_AY kullanımının çıktısında vouchertime YIL-AY(2021-10) şeklinde gösterir. Aynı formatı AY_GUN şeklinde de uyarlayabiliriz.  Bir diğer örnek kullanım şeklinde ise date_format(daterangebegin(0, 'day'), '(%Y) %d.%m') as YİL fonksiyonun çıktısı ise (2021) 25.10 şekilndedir.
date_range() daterange(vouchertime, -1, 'month')
daterange(vouchertime, 0, 'year')
voucherTime değerinin belirli bir tarihin içerisinde olup olmadığını döndürür. 1. örnekte voucherTime bir önceki aydan daha eskiyse "-1" yeniyse "0" döndürür.
2. örnekte voucherTime bilgisi bir önceki yıla aitse "-1" bu yıl ve sonrasına aitse "0" döndürür.
daterangeend() daterangeend(-12, 'month') Bu komut verilen tarihin sonunu çağırır. Örnekte bu günü 12 ay geriye öteler. 12 ay öncesinde ayın son günü saat 23:50:999 u döndürür.
daterangebegin() daterangebegin(0, 'year') as Yıl_Başlangıcı daterangebegin fonksiyonunun birkaç kullanım şekli vardır. Bu fonksiyonla şu an bulunduğumuz yılın başlangıcını daterangebegin(0, 'year'), bir önceki yılın başlangıcı daterangebegin(-1,'year') veya bir sonraki yılın başlangıcını daterangebegin(+1,'year') gösterebiliriz.
dateoffset() dateoffset(-1, 'year') as Gecen_Yıl_Sonu dateoffset  fonksiyonunun kullanımı da daterangebegin ile benzerdir. Tek fark dateoffset fonksiyonu tarihi bir yıl önceki bugüne öteler. Bu fonksiyonun sorgu içerisinde 2021-10-25 tarihini sorguluyor ise bu fonksiyonun denk geldiği sütun 2020-10-25 olarak görülür.
quarter quarter(SiparisFisi.SiparisTarihi) as Siparis_Tarihi Verilen DateTime değerinin ilgili çeyrek tarihini döndürür. Sorgu önizlemesinde çeyrek zamanı görmek istersek buradaki gibi kullanabiliriz. Bu komutun çıktısında ay olarak OCAK-ŞUBAT-MART 1, NİSAN-MAYIS-HAZİRAN 2, TEMMUZ-AĞUSTOS-EYLÜL 3, EKİM-KASIM-ARALIK ayları ise 4 olarak karşımıza gelir.
cast Veri tipini değiştirir. Detaylı bilgi için tıklayın.

 

  • group by komutunun kullanılması ise sonraki konumuzdur.