Гость
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Подсчёт кол-ва строк исходя из параметров указанных во вспомогательной таблице. / 4 сообщений из 4, страница 1 из 1
05.10.2013, 11:22
    #38417603
tororo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчёт кол-ва строк исходя из параметров указанных во вспомогательной таблице.
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
tableA
Afield
a
b
b
c
d
d

tableB
id   field1    field2
1    a           b
2    c           d
3    e           f

Требуется подсчитать кол-во строк из первой таблицы tableA удовлетворяющих условию для каждой строки из второй таблицы tableB

Результат должен быть такой.
id field1 field2 kolvo
1 a b 3
2 c d 3
3 e f 0

Я написал такой запрос:
SELECT tableB.id, tableB.field1, tableB.field2, COUNT tableA.Afield AS kolvo
FROM
tableA, tableB
WHERE tableA.fieldA >= tableB.field1 and tableA.fieldA <= tableB.field2
GROUP BY tableB.id

Но при таком запросе третья строка в результате вообще не появится, т.к. она не удовлетворяет условию в WHERE. А мне надо чтобы она была, просто в поле kolvo должен стоять нуль.
...
Рейтинг: 0 / 0
05.10.2013, 19:32
    #38417790
White Owl
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчёт кол-ва строк исходя из параметров указанных во вспомогательной таблице.
Код: sql
1.
2.
3.
select tableB.*,
    (select count(*) from tableA where tableA.Afield between tableB.field1 and  tableB.field2) kolvo
from tableB
...
Рейтинг: 0 / 0
05.10.2013, 19:39
    #38417797
tororo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчёт кол-ва строк исходя из параметров указанных во вспомогательной таблице.
White Owl,

Спасибо, правда я уже сам написал вот таким образом:

SELECT tableB.id, tableB.field1, tableB.field2, sum (case when tableA.fieldA >= tableB.field1 and tableA.fieldA <= tableB.field2 then 1 else 0 end) AS kolvo
FROM
tableA, tableB
GROUP BY tableB.id
...
Рейтинг: 0 / 0
06.10.2013, 11:03
    #38417984
tororo
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Подсчёт кол-ва строк исходя из параметров указанных во вспомогательной таблице.
Эге, а если у меня не одно поле для просчёта количества чего-либо , в таком случае придётся указывать условие для КАЖДОГО такого поля. Это зело неудобственно!

А ещё какие-нибудь варианты есть?
...
Рейтинг: 0 / 0
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Подсчёт кол-ва строк исходя из параметров указанных во вспомогательной таблице. / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]