|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
Есть поле в формате 2019-11-22 03:05:00 В течении дня есть много подобных записей, но с разным временем, а как сгруппировать по дням, т.е. отбросить время оставить только год, месяц и день? ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 03:06 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
sc2r2bey, CAST('2019-11-22 03:05:00' AS DATE) или date_trunc('day', '2019-11-22 03:05:00'::TIMESTAMP) ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 10:26 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
а если только по году и месяцу, только в функции не должно быть запятых ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 15:13 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
sc2r2bey, Вам совсем лень документацию смотреть,уже выше вам все разжевали? А вы и есть за меня будете? Ага. (с) Тот же date_trunc только с другими параметрами. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 18:55 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
но он не группирует Код: plsql 1. 2. 3. 4. 5. 6.
я где-то туплю ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 20:12 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
sc2r2bey, ммм ну как бы "column1" вам все портит, да и что такое column3, я телепатическую шапку на работе оставил. если column3 уникален или около того, вы также ничего не получите. order by зачем по column1, навер надо Order by DATE_TRUNC('month', column1) или order by 1 что эквивалентно. Я не знаю куда проще, это наверно сейчас с молоком матери уже впитывают. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 22:07 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
sc2r2bey, почему вы ожидаете в результате группировку только год/месяц, если сами запросили группировать так же по исходному немодифицированному полю? Результат закономерен. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 22:09 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
Troglodit sc2r2bey, ммм ну как бы "column1" вам все портит, да и что такое column3, я телепатическую шапку на работе оставил. если column3 уникален или около того, вы также ничего не получите. order by зачем по column1, навер надо Order by DATE_TRUNC('month', column1) или order by 1 что эквивалентно. Я не знаю куда проще, это наверно сейчас с молоком матери уже впитывают. да, но если я column1 уберу из группировки появляется ошибка, даже, если я уберу COUNT(column1) AS "Full", авторArray ( [0] => 42803 [1] => 7 [2] => ОШИБКА: столбец "table.column1" должен фигурировать в предложении GROUP BY или использоваться в агрегатной функции LINE 1: ...UNC('days', column1), "column3" ORDER BY "column1" column3, нет он не уникален ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 23:42 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
вот такая штука работает: Код: plsql 1. 2. 3.
но только по дню сортирует 2019-11-11, а мне еще по месяцу надо 2019-11 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.11.2019, 23:48 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
sc2r2bey вот такая штука работает: Код: plsql 1. 2. 3.
но только по дню сортирует 2019-11-11, а мне еще по месяцу надо 2019-11 Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 03:02 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
sc2r2bey да, но если я column1 уберу из группировки появляется ошибка, даже, если я уберу COUNT(column1) AS "Full", авторArray ( [0] => 42803 [1] => 7 [2] => ОШИБКА: столбец "table.column1" должен фигурировать в предложении GROUP BY или использоваться в агрегатной функции LINE 1: ...UNC('days', column1), "column3" ORDER BY "column1" column3, нет он не уникален Вы читать не умеете, идите в 1-й класс. Я вам русским по белому написал уберите column1, очевидно что не только из списка полей, но и из order by. Такое чувство, что автору даже лень sql-92 почитать. Я специально не пишу решение, чтобы вы все таки оторвали жопу от дивана и прочитали как пишется select с агрегатными функциями. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 03:17 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
dimonz80, ваше решение неверное, результат будет такой же как у автора или если я не ошибаюсь, order by у вас не сработает и выдаст ошибку. а вот order by 2,3 нет. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 03:18 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
Troglodit dimonz80, ваше решение неверное, результат будет такой же как у автора или если я не ошибаюсь, order by у вас не сработает и выдаст ошибку. а вот order by 2,3 нет. очепятка там. так надо Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 04:30 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
dimonz80 Troglodit dimonz80, ваше решение неверное, результат будет такой же как у автора или если я не ошибаюсь, order by у вас не сработает и выдаст ошибку. а вот order by 2,3 нет. очепятка там. так надо Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
Мне кажется все же DATE_TRUNC('month', column1) как то проще и гибче А вы реально пробовали запускать ваш запрос? Если не ошибаюсь, у вас должна быть та же ошибка что и выше, никто не знает про поля year и month в group by и order by, вот если бы был подзапрос тогда все было бы корректно. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 11:17 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
Troglodit Если не ошибаюсь, у вас должна быть та же ошибка что и выше, никто не знает про поля year и month в group by и order by, вот если бы был подзапрос тогда все было бы корректно. Тут ошибаетесь, order by и group by про alias'ы в select уже знают. Собственно ровно потому же почему возможно делать order by 2,3. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 11:38 |
|
Как сгрупировать по дате?
|
|||
---|---|---|---|
#18+
Melkij, Я просто запомнил, что в раньше работал order by 1,2, но GROUP by падал на ошибке. И это был не postgres. Сейчас проверил на древней виртуалке sql 2005-й там именно такая картина: order by работает, group by нет. Здорово, что можно писать по-человечески. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.11.2019, 11:51 |
|
|
start [/forum/topic.php?fid=53&msg=39893263&tid=1994924]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
34ms |
get topic data: |
10ms |
get forum data: |
3ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
others: | 13ms |
total: | 147ms |
0 / 0 |