Za pomocą dziesiętnych, pływak i rzeczywistych danych
decimal Typ danych można przechowywać maksymalnie 38 cyfr, z których po prawej stronie przecinka dziesiętnego.decimal Typ danych przechowuje dokładną reprezentację numer; nie ma żadnych zbliżenia wartości przechowywanej.
Dwa atrybuty, które definiują decimal kolumny, zmiennych i parametrów są:
p
Określa dokładność lub liczbę cyfr, obiekt może pomieścić.
s
Określa skalę lub liczbę cyfr, które mogą być umieszczone po prawej stronie przecinka dziesiętnego.
p i s musi przestrzegać reguły: 0 <= s <= p <= 38.
Domyślna maksymalna dokładność numeric i decimal typów danych jest 38.W Transact-SQL, numeric funkcjonalnie odpowiada decimal typu danych.
Użyj decimal Typ danych do przechowywania liczb z miejscami dziesiętnymi, gdy wartości danych muszą być przechowywane dokładnie określone.
Aby uzyskać więcej informacji dotyczących sposobu matematyczne operacje mają wpływ na dokładność i Skala wynik, zobacz Precyzja, skala i długość (Transact-SQL).
Przy użyciu pływaka i rzeczywistych danych
float i real typy danych są znane jako typy danych przybliżone.Zachowanie float i real następuje specyfikacją IEEE 754 na typy przybliżonych danych liczbowych.
Przybliżone liczbowych typów danych nie przechowują dokładne wartości dla liczby; one przechowywać bardzo bliskie zbliżenia wartości.Dla wielu aplikacji mała różnica określona wartość i zbliżenia przechowywanych jest niezauważalne.Czasami jednak różnica staje zauważalne.Ze względu na charakter przybliżony float i real typy danych, należy używać tych typów danych, gdy dokładne liczbowe zachowanie jest wymagany, takich jak w aplikacjach finansowych, obejmującego zaokrąglania lub równości kontroli.Zamiast tego należy użyć wartości całkowitej, decimal, money, lub smallmoney typów danych.
Należy unikać float lub real kolumn w klauzula WHERE, warunki, szczególnie = wyszukiwania i <> operatorów.Warto ograniczyć float i real kolumny do > lub < porównań.
Specyfikacja IEEE 754 udostępnia cztery tryby zaokrąglania: zaokrąglanie do najbliższej, okrągłe, zaokrąglone niedziałający i zaokrąglić do zera.Microsoft SQL Server uses round up.Wszystkie są dokładne gwarantowanej dokładności, ale może spowodować nieznacznie różne wartości zmiennoprzecinkowe.Ponieważ reprezentacja binarna liczba zmiennoprzecinkowa mogą korzystać z jednego wiele schematów zaokrąglania prawnych, jest niemożliwe wiarygodne oszacowanie wartości zmiennoprzecinkowe.
Zobacz także