SQL Server’da ½’yi Matematiksel Olarak İncelemek
Herkese merhaba. Bu yazıda SQL Server’da ½ yani bir bölüm 2 ifadesini matematiksel olarak inceleyeceğiz.
SQL Server’da bu tarz sorular belki mülakatlarda belki de sorgu yazarken karşınıza denk gelebilir. Bu küçük bir soru. Ancak, bir o kadar da ilginç bir soru. Birçok kişi hemen “0.5” cevabını verir. Matematiksel olarak doğrudur ama SQL Server için bunun böyle olduğunu söylemek zor. Zira SQL Server’da bu işlemi yaparsanız “0” sonucunu görürsünüz.
Aşağıdaki sorguyu SQL Server Management Studio üzerinde siz de deneyin.
SELECT 1/2 AS Sonuc
Sıfır sonucunu gördüyseniz okumaya devam edin.
SQL Server’da ½ ifadesinin “0” çıkmasının nedeni, SQL Server’ın 1 ve 2’yi tamsayı olarak kabul etmesidir.
Sorgularımızı aşağıdaki gibi değiştirsek “0.5” ifadesini veri tiplerine göre yakalamış oluruz.
SELECT
1 / 2 AS Sonuc1
SELECT
1.0 / 2.0 AS Sonuc2
SELECT
CONVERT(FLOAT, 1) / 2 AS Sonuc3
SELECT
1 / CONVERT(FLOAT, 2) AS Sonuc4
SELECT
CONVERT(FLOAT, 1) / CONVERT(FLOAT, 2) AS Sonuc5
SELECT
CAST(1 AS FLOAT) / 2 AS Sonuc6
SELECT
1 / CAST(2 AS FLOAT) AS Sonuc7
SELECT
CAST(1 AS FLOAT) / CAST(2 AS FLOAT) AS Sonuc8
SELECT
CONVERT(NUMERIC(5, 2), 1.0 / 2.0) AS Sonuc9
Yukarıdaki sorguyu çalıştırınca aşağıdakine benzer bir sonuç göreceksiniz.
Görüldüğü üzere “0.5” sonucunu elde etmiş olduk.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.