MySQL функції для роботи з числами


Для роботи з числовими даними MySQL надає ряд функцій:

ROUND : округлює число. В якості першого параметра передається число. Другий параметр вказує на довжину. Якщо довжина становить позитивне число, то воно вказує, до якої цифри після коми йде округлення. Якщо довжина становить негативне число, то воно вказує, до якої цифри з кінця числа до коми йде округлення

SELECT ROUND(1342.345, 2),      -- 1342.35
(SELECT ROUND(1342.345, -2));   -- 1300;

TRUNCATE : залишає в дробової частини певну кількість символів

SELECT TRUNCATE(1342.345, 2);       -- 1342.34

ABS : повертає абсолютне значення числа.

SELECT ABS(-123)    -- 123

CEILING : повертає найменше ціле число, яке більше або дорівнює поточному значенню.

SELECT CEILING(-123.45),        -- -123
(SELECT CEILING(123.45));       -- 124

FLOOR : повертає найбільше ціле число, яке менше або дорівнює поточному значенню.

SELECT FLOOR(-123.45),      -- -124
(SELECT FLOOR(123.45));     -- 123

POWER : зводить число в певну ступінь.

SELECT POWER(5, 2),     -- 25
(SELECT POWER(5, 3));       -- 125

SQRT : отримує квадратний корінь числа.

SELECT SQRT(225);       -- 15

SIGN : повертає -1, якщо число менше 0, і повертає 1, якщо число більше 0. Якщо число дорівнює 0, то повертає 0.

SELECT SIGN(-5),        -- -1
(SELECT SIGN(7));       -- 1

RAND : генерує випадкове число з плаваючою точкою в діапазоні від 0 до 1.

SELECT RAND();      -- 0.707365088352935
SELECT RAND();      -- 0.173808327956812

Наприклад, візьмемо таблицю:

CREATE TABLE Products
(
    Id INT AUTO_INCREMENT PRIMARY KEY,
    ProductName VARCHAR(30) NOT NULL,
    Manufacturer VARCHAR(20) NOT NULL,
    ProductCount INT DEFAULT 0,
    Price DECIMAL NOT NULL
);

Округлимо твір ціни товару на кількість цього товару:

SELECT ProductName, ROUND(Price * ProductCount, 2)
FROM Products;

Наш партнер:
beta test mp3 playlist downloader