Запрос с Berween наверно

astra32
Дата: 09.03.2016 02:12:53
Как такое можно реализовать и можно ли вообще? Диапазоны могут перекрываться.

Исходные данные

id text Kol
1 код1 1
2 код2 1
3 код3 1
4 код4 1
5 код5 1
6 код6 1
7 код7 1
8 код8 1
9 код9 1

Таблица с настройками диапазонов, от Код1 до Код5, например

id txt  Begin  End
1 raz код1 Код5
2 dva код2 Код3
3 tri код1 Код9

На выходе получить такое

id txt  Sum_Kol
1 raz 5
2 dva 2
3 tri 9
guest_rusimport
Дата: 09.03.2016 03:19:53
astra32,
если то, что задано во второй таблице, именно так и выглядит, то -
select id, txt, (val(mid([End],4)) - val(mid([Begin],4)) + 1) as Sum_Kol from Tabl
astra32
Дата: 09.03.2016 04:56:45
guest_rusimport,
Ух!!! Я пока не совсем понял как это работает, но ответы правильные дает. Спасибо
ПЕНСИОНЕРКА
Дата: 09.03.2016 07:05:38
astra32,

абсурдное решение, не учитывающее количество(там ведь не всегда 1) и кодов может быть более 9
id text Kol
1 код1 1
2 код2 1
3 код3 2
4 код4 1
5 код5 1
6 код6 11
7 код7 1
8 код8 999
9 код9 1
guest_rusimport
Дата: 09.03.2016 10:01:17
ПЕНСИОНЕРКА,

да, вы правы,конечно же, абсурд, не вчитался в вопрос ... может быть так правильнее? :)
SELECT t2.id, t2.txt, dsum("[Kol]","tabl1","val(mid(text,4)) >= val(mid('" & t2.begin & "',4)) And val(mid(text,4)) <= val(mid('" & t2.end & "',4)) ") AS sum_kol
FROM tabl2 AS t2;
ПЕНСИОНЕРКА
Дата: 09.03.2016 11:29:38
guest_rusimport,

возможно кавычки лишние(лень создавать базу для проверки)
SELECT t2.id, t2.txt,
 dsum("[Kol]","tabl1",
"val(mid(text,4)) >= val(mid(" & t2.begin & ",4))
 And
 val(mid(text,4)) <= val(mid(" & t2.end & ",4)) ") AS sum_kol
FROM tabl2 AS t2;
ПЕНСИОНЕРКА
Дата: 09.03.2016 11:35:17
guest_rusimport,

конечно, я предполагаю, что это отчет типа статотчетности
ТС видимо чересчур условный пример приложил
astra32
Дата: 09.03.2016 19:45:58
ПЕНСИОНЕРКА,
Именно статотчетость и есть
ПЕНСИОНЕРКА
Дата: 09.03.2016 20:20:32
astra32,

я статотчетность делаю через рабочую таблицу
--столбцы по шапке+пара служебных(номер строки и номер для задания порядка заполнения, если часть итогов заполняется суммированием рядовых строк)
--зануляю рабочую таблицу
--и отдельными запросами заполняю ее
astra32
Дата: 09.03.2016 23:57:40
ПЕНСИОНЕРКА, я видел, реализовано так, но не представляю, как сделать


id txt Begin End Without
1 raz код1 Код5 Код3
2 dva код2 Код3
3 tri код1 Код9 (Код4 and Код6)

с... по... исключая...