22 подписчика
Условие вхождения в диапазон
Условие вхождения в диапазон в SQL проверяется с помощью оператора BETWEEN.
Для демонстрации оператора подготовим таблицу, хранящую данные о рыночных котировках
CREATE TABLE dayquotes (
ticker VARCHAR(6) NULL,
quote_date DATE NULL,
o NUMERIC(16, 4) NULL, -- open
h NUMERIC(16, 4) NULL, -- high
l NUMERIC(16, 4) NULL, -- low
c NUMERIC(16, 4) NULL, -- close
v NUMERIC(16, 4) NULL -- volume
);
и заполним эту таблицу данными.
INSERT INTO dayquotes
(ticker, quote_date, o, h, l, c, v)
VALUES
('XAUUSD','2023-11-16',1960.35000,1987.94000,1956.24000,1981.13000,293027),
('SBER','2023-11-16',282.40,283.69,279.56,279.70,2469660),
('RUAL','2023-11-16',39.335,39.430,38.965,39.035,663055),
('XAUUSD','2023-11-17',1981.11000,1993.39000,1978.34000,1980.33000,281430),
('SBER','2023-11-17',279.70,282.50,278.66,281.60,3132232),
('RUAL','2023-11-17',39.035,39.300,38.685,39.040,797789);
Для выборки котировок с ценой открытия от 30 до 40 нужно выполнить запрос
SELECT *
FROM dayquotes
WHERE o BETWEEN 30 AND 40
;
Результатом запроса будет выборка котировок бумаг Русал (RUAL).
Около минуты
24 января 2024