powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / COUNT() ни чего не выдет при использовании GROUP BY
3 сообщений из 3, страница 1 из 1
COUNT() ни чего не выдет при использовании GROUP BY
    #35532162
Jelis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день!
Функция count() вообще не должна выдовать пустое значение? Либо 0, либо сколько строк? У меня почемуто, при использовании group by и отсутсвии подходящих строк, count() не возвращает ни чего :-( С чего такое может быть?
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38.
39.
40.
41.
42.
43.
44.
45.
46.
47.
48.
49.
50.
51.
jelis=> \d masters_teams
      Table "public.masters_teams"
     Column      |   Type   | Modifiers
-----------------+----------+-----------
 team_work_date  | date     | not null
 team_nbr        | team_nbr | not null
 master_initials | initials | not null
Indexes:
    "pk_masters_teams" PRIMARY KEY, btree (team_work_date, team_nbr, master_initials)
Foreign-key constraints:
    "fk_masters_teams_masters" FOREIGN KEY (master_initials) REFERENCES masters(master_initials) ON UPDATE RESTRICT ON DELETE RESTRICT

jelis=> SELECT * FROM masters_teams;
 team_work_date | team_nbr | master_initials
----------------+----------+-----------------
  2008 - 09 - 10      | TEAM # 1   | A. Jermalinskis
( 1  row)

jelis=> SELECT count(team_work_date) FROM Masters_Teams;
 count
-------
      1 
( 1  row)

jelis=> SELECT count(team_work_date) FROM Masters_Teams WHERE team_work_date = current_date;
 count
-------
      1 
( 1  row)

jelis=> SELECT count(team_work_date) FROM Masters_Teams WHERE team_work_date = current_date + '1 day'::interval;
 count
-------
      0 
( 1  row)

jelis=> SELECT count(team_work_date) FROM Masters_Teams WHERE team_work_date = current_date GROUP BY team_work_date;
 count
-------
      1 
( 1  row)

-- до этого момента все считалось вроде как надо
-- но вот следущий запрос ни чего не возвращает,
-- хотя по идее, должно быть 0

jelis=> SELECT count(team_work_date) FROM Masters_Teams WHERE team_work_date = current_date + '1 day'::interval GROUP BY team_work_date;
 count
-------
( 0  rows)


Типы team_nbr, initials - это мои собственные домены. Сервер 8.3.3.
...
Рейтинг: 0 / 0
COUNT() ни чего не выдет при использовании GROUP BY
    #35532213
V.V.L.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
count() вроде как выдает кол-во записей в группах. Без GROUP BY всегда будет одна группа и ней может быть 0 записей. А в последнем примере таких групп нет совсем, поэтому такой и результат.
...
Рейтинг: 0 / 0
COUNT() ни чего не выдет при использовании GROUP BY
    #35532590
Jelis
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
V.V.L.count() вроде как выдает кол-во записей в группах. Без GROUP BY всегда будет одна группа и ней может быть 0 записей. А в последнем примере таких групп нет совсем, поэтому такой и результат.

Да... в самом деле логично :-) Спасибо!
...
Рейтинг: 0 / 0
3 сообщений из 3, страница 1 из 1
Форумы / PostgreSQL [игнор отключен] [закрыт для гостей] / COUNT() ни чего не выдет при использовании GROUP BY
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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