Tuesday, August 22, 2023

Sütun Tipleri - FLOAT

Giriş
SQL Server'da DOUBLE diye bir sütun tip yok. Onun yerine FLOAT var. Açıklaması şöyle
float (n) : The n parameter indicates whether the field should hold 4 or 8 bytes. float(24) holds a 4-byte field and float(53) holds an 8-byte field. Default value of n is 53.
Yani FLOAT(24), FLOAT(53) veya kısaca sadece FLOAT şeklinde kullanılabilir. 

Aslında bu isimlendirme bence yanlış ve karışıklığa sebep oluyor. Çünkü diğer programlama dillerinden FLOAT başka bir anlama geliyor.

Tuesday, August 8, 2023

Sütun Tipleri - DATETIME

Giriş
Not: Bu sütun tipi yerine datetime2 kullanılması öneriliyor. datetime2 kesin milisaniye ve microsaniye saklayabiliyor

Açıklaması şöyle
The DATETIME data type specifies a date and time with fractional seconds.

DATETIME supports dates from January 1, 1753, through December 31, 9999.

The default value is 1900-01-01 00:00:00. The time is based on 24-hour clock.
Format şöyle
yyyy-MM-dd HH:mm:ss[.nnn]
nnn 0 to 999 arasında bir sayı olabilir. Yani milisaniyeyi temsil eder. Ancak milisaniye kısmı aslında yuvarlanır.  Açıklaması şöyle
datetime rounds fractional seconds to the nearest 0, 3, or 7 milliseconds.

Örnek
DATETIME tipini DATE tipine çevirmek için şöyle yaparız
SELECT *
FROM table1 a INNER JOIN table2 b
    ON a.id = b.a_id
    AND CONVERT(date, a.dt) = CONVERT(date, b.dt)

Sütun Tipleri - REAL

Giriş Açıklaması şöyle - Equivalent to a 32-bit floating-point number (single precision) - IEEE standard floating-point value (7-digit...