|
|
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
В таблице имеется поле category Код: plsql 1. 2. 3. Делаю группировку Код: plsql 1. 2. 3. 4. Хочу получить на выходе вот такую структуру Код: plsql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 11:26 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, grouping sets, rollup ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 11:29 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
env-=Koba=-, grouping sets, rollup Спасибо за направление ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 11:43 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
Сгруппировал по периодам даты Реально ли перевернуть колонку paltform и сделать ее колонками Число их может меняться но максимально из выше сказанного условия будет 6 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 12:30 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, pivot ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 12:39 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, не проще ли select ...,count(distinct user_id) ...? ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 13:51 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
stax..-=Koba=-, не проще ли select ...,count(distinct user_id) ...? ..... stax Не совсем понял ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 14:05 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-stax..-=Koba=-, не проще ли select ...,count(distinct user_id) ...? ..... stax Не совсем понял убрать подзапрос вместо "select distinct..." count(distinct ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 14:10 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
stax..-=Koba=-пропущено... Не совсем понял убрать подзапрос вместо "select distinct..." count(distinct ..... stax спасибо за подсказку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 16:48 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-stax..пропущено... убрать подзапрос вместо "select distinct..." count(distinct ..... stax спасибо за подсказку Ну тут от условия над плясать Код: plsql 1. 2. 3. 4. 5. 6. 7. этот селект вернет сколько "дней"разные пользователи были в системе т.е. если пользователь "A" заходил каждый день в январе то count(*) = 31 для варианта Код: plsql 1. 2. 3. 4. 5. условие уже сколько пользователей ХОТЯ-БЫ раз в этом месяце заходили в систему т.е. если пользователь "A" заходил каждый день в январе то count(distinct user_id) = 1 Т.е. оба варианта рабочие но считают/выводят разные данные и тут все от условия задачи зависит ... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2017, 19:34 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
Еще вопрос а можно ли использовать условия в группировке Например мне надо посчитать число удовлетворяющих как пример Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2017, 10:14 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
Вот сейчас непонятно было что Вам надо: -=Koba=-Еще вопрос а можно ли использовать условия в группировке Ответ: можно -=Koba=-Например мне надо посчитать число удовлетворяющих как пример Код: plsql 1. 2. 3. Не понял Если надо посчитать число 3 разных колонки - тогда Код: plsql 1. 2. 3. Если это 1 поле с константным выводом Код: plsql 1. 2. 3. 4. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2017, 10:29 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
MaximaXXLВот сейчас непонятно было что Вам надо: -=Koba=-Еще вопрос а можно ли использовать условия в группировке Ответ: можно -=Koba=-Например мне надо посчитать число удовлетворяющих как пример Код: plsql 1. 2. 3. Не понял Если надо посчитать число 3 разных колонки - тогда Код: plsql 1. 2. 3. Если это 1 поле с константным выводом Код: plsql 1. 2. 3. 4. Нет это не константа, а количество таких совпадение (A || B) && С удовлетворяет num=1 и num=2 от сюда count - 2 ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2017, 14:24 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=- Нет это не константа, а количество таких совпадение (A || B) && С удовлетворяет num=1 и num=2 от сюда count - 2 Я не понимаю что надо группировать с чем ... т.е. что надо, группировку для одной даты? для одного NUM ... что должно удовлетворять ((CAT = 'A' or CAT = 'B') and CAT = 'C')? Напиши плиз для Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. какой результат ты хочешь увидеть для этой таблицы? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.05.2017, 15:53 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Я хочу узнать число num? которые удовлетворяют условию (A || B) && С num = 1 - удовлетворяет, присутствует в A, присутствует в B и присутствует в C num = 2 - удовлетворяет, присутствует в A и присутствует в C num = 3 - не удовлетворяет, присутствует в C только (выражение (A || B) && С - ложно ) Итого для num in (1..3) два удовлетворения В итоговой таблице вывести что-то вроде Код: plsql 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2017, 15:11 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, Как частный случай могу предложить такой например Код: plsql 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2017, 15:58 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
MaximaXXL-=Koba=-, Как частный случай могу предложить такой например Код: plsql 1. 2. 3. 4. 5. 6. И остальные условия объединть через unio получается? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2017, 16:22 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
[quot -=Koba=-]MaximaXXL-=Koba=-, И остальные условия объединть через unio получается? Да сложно понять что тебе надо =) можно так например Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2017, 16:38 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
MaximaXXL, Да спасибо, объяснять не мой конек =(( буду смотреть твои примеры... спасибо за напралвение ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.05.2017, 16:43 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
А как можно группировать с учетом предыдущих данных?? То есть ест таблица пользователей Код: plsql 1. Группирую по месяцам Код: plsql 1. А я еще хочу учитывать предыдущие месяцы У меня так, число зарегиных по месяца Код: plsql 1. 2. 3. Хочу получить Код: plsql 1. 2. 3. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2017, 14:42 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, sum() over(parititon by .. order by.. rows/range between ..) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 26.05.2017, 16:35 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
Можно ли избавиться от внешнего sql select Код: plsql 1. 2. 3. 4. 5. Чтоб считал сразу count и суммировал с предыдущей строчкой ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2017, 14:51 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
-=Koba=-, Код: plsql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. ..... stax ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2017, 15:11 |
|
||
|
Group с пересечением
|
|||
|---|---|---|---|
|
#18+
stax.., Спасибо за помощь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 29.05.2017, 15:15 |
|
||
|
|

start [/forum/topic.php?fid=52&msg=39461622&tid=1885852]: |
0ms |
get settings: |
9ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
174ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
59ms |
get tp. blocked users: |
1ms |
| others: | 236ms |
| total: | 513ms |

| 0 / 0 |
