W MySQL funkcja TRUNCATE()
funkcja obcina wartość do określonej liczby miejsc dziesiętnych.
Funkcja przyjmuje dwa argumenty; wartość i liczbę miejsc dziesiętnych, do których należy obciąć tę wartość.
Wszystkie liczby są zaokrąglane do zera.
Składnia
Składnia wygląda tak:
TRUNCATE(X,D)
Gdzie X
to wartość, dla której chcesz skrócić, a D
to liczba miejsc dziesiętnych, do których należy go skrócić.
Przykład 1 – Podstawowe użycie
Oto podstawowy przykład do zademonstrowania.
SELECT TRUNCATE(1.2345, 2);
Wynik:
+---------------------+ | TRUNCATE(1.2345, 2) | +---------------------+ | 1.23 | +---------------------+
Przykład 2 – nie określaj punktu dziesiętnego
Możesz skrócić liczbę do żadnego punktu dziesiętnego, używając 0
jako drugi argument.
SELECT TRUNCATE(1.2345, 0);
Wynik:
+---------------------+ | TRUNCATE(1.2345, 0) | +---------------------+ | 1 | +---------------------+
Przykład 3 – Określ ujemną część ułamkową
Możesz również podać wartość ujemną dla drugiego argumentu. Powoduje to, że cyfry po lewej stronie przecinka dziesiętnego stają się zerami. Liczba cyfr, których to dotyczy, zależy od podanej wartości.
Oto przykład:
SELECT TRUNCATE(123.45, -1);
Wynik:
+----------------------+ | TRUNCATE(123.45, -1) | +----------------------+ | 120 | +----------------------+
A jeśli dostosujemy drugi argument:
SELECT TRUNCATE(123.45, -2);
Wynik:
+----------------------+ | TRUNCATE(123.45, -2) | +----------------------+ | 100 | +----------------------+
Przykład 4 – Wyrażenia
Możesz również przekazywać wyrażenia takie jak:
SELECT TRUNCATE(1 + .2345, 2);
Wynik:
+------------------------+ | TRUNCATE(1 + .2345, 2) | +------------------------+ | 1.23 | +------------------------+
Możesz to również zrobić za pomocą drugiego argumentu:
SELECT TRUNCATE(1.2345, 1 + 1);
Wynik:
+-------------------------+ | TRUNCATE(1.2345, 1 + 1) | +-------------------------+ | 1.23 | +-------------------------+
Przykład 5 – Przekazywanie funkcji
W tym przykładzie przekazuję MySQL PI()
funkcja jako pierwszy argument.
SELECT PI(), TRUNCATE(PI(), 2);
Wynik:
+----------+-------------------+ | PI() | TRUNCATE(PI(), 2) | +----------+-------------------+ | 3.141593 | 3.14 | +----------+-------------------+