0

Пробелы и диапазоны в T-SQL

Предпочтительным для изданий технической и научной (в области точных и естественных наук) литературы является стандартный знак многоточие (…) между числами в цифровой форме.

В технической литературе по традиции допустимо применять знак ÷ между числами в цифровой форме.

Тире и предлоги употребляются в изданиях гуманитарной и публицистической литературе.

Тире в качестве знака интервала значений рекомендуется ставить:

1. При словесной форме чисел (прописью) в изданиях художественной литературы, а также близких к ней. Напр.: …длиной пять – десять метров. При этом, как и обычно между словами, тире, по техническим правилам набора, должно быть отбито от слов неразрывным пробелом.

2. В тексте изданий общественно-политической, гуманитарной и подобной литературы. Напр.: План выполнялся на 110–115 процентов; 30–35 тыс. юношей и девушек. При этом, как и обычно между числами в цифровой форме, тире, по техническим правилам набора, не должно отбиваться от цифр.

Не рекомендуется применять тире в качестве знака интервала значений, когда одно из значений – величина положительная, а другое – отрицательная или когда оба – величины отрицательные. Напр.:

Когда два числа в словесной форме (прописью) означают не «от такого-то до такого-то числа», а «то ли то, то ли другое число», то между числительными ставят дефис. Напр.: У дома стояло машин пять-шесть. В цифровой форме сохраняется тире: машин 5–6.

При цифровой форме крупных чисел в интервале значений необходимо сохранять нули в числе нижнего предела. Напр.:

Рекомендуется: Недопустимо:
Высота 15 000–20 000 Высота 15–20 000 (если 1-е число 15 000)

При словесно-цифровой форме чисел допустимо опускать в числе нижнего предела обозначение тыс., млн, млрд, поскольку читатель воспринимает такие обозначения как составную часть единицы величины. Напр.:

Допустимо: Не обязательно:
Высота 20–30 тыс. метров Высота 20 тыс. – 30 тыс. м

Числа в диапазоне значений, как правило, располагаются от меньшего к большему, от нижнего предела к верхнему. Исключение составляют взаимосвязанные относительные числа (во второй паре большее число может идти первым). Напр.: Это составляет 60–80% всей массы груза. Остальные 40–20%…

Номера телефонов,

Работа с базами данных в .NET Framework — Оконные функции T-SQL — Пробелы и диапазоны

Исходник базы данных

Задачу нахождения пробелов и диапазонов в SQL очень часто приходится решать в реальных жизненных ситуациях. Основной принцип заключается в том, что у вас есть определенная последовательность чисел или значений дат и времени, между которыми должен соблюдаться фиксированный интервал, но некоторые элементы отсутствуют. Решение задачи поиска пробелов подразумевает нахождение элементов, которых не хватает в последовательности, а поиск диапазонов — нахождение непрерывных диапазонов существующих значений. Для демонстрации методики поиска пробелов и диапазонов я воспользуюсь таблицей по имени T1 с численной последовательностью в столбце col1 с целым интервалом, равным единице, и таблицу T2 с последовательностью метода даты и времени в столбце col1 с интервалом в один день. Вот код создания T1 и T2 и наполнения их тестовыми данными:

SET NOCOUNT ON; USE TSQL2012; — dbo.T1 (numeric sequence with unique values, interval: 1) IF OBJECT_ID(‘dbo.T1’, ‘U’) IS NOT NULL DROP TABLE dbo.T1; CREATE TABLE dbo.T1 ( col1 INT NOT NULL CONSTRAINT PK_T1 PRIMARY KEY ); GO INSERT INTO dbo.T1(col1) VALUES(2),(3),(7),(8),(9),(11),(15),(16),(17),(28); — dbo.T2 (temporal sequence with unique values, interval: 1 day) IF OBJECT_ID(‘dbo.T2’, ‘U’) IS NOT NULL DROP TABLE dbo.T2; CREATE TABLE dbo.T2 ( col1 DATE NOT NULL CONSTRAINT PK_T2 PRIMARY KEY ); GO INSERT INTO dbo.T2(col1) VALUES (‘20120202’), (‘20120203’), (‘20120207’), (‘20120208’), (‘20120209’), (‘20120211’), (‘20120215’), (‘20120216’), (‘20120217’), (‘20120228’);

admin

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *