|
|
|
Склейка полей, в которых одинаковые первые 2 цифры, с разделом на месяца
|
|||
|---|---|---|---|
|
#18+
Всем привет! Имеется таблица, где в одном поле данные хранятся в виде: 02, 02-09, 02-10, 04, 04-02, 05, 05-06. Каждым значениям соответствует свой месяц. У меня такие вопросы: 1)Как сделать обьединение строк, в которых первые две цифры одинаковы, в одну? 2)Если за февраль записано 10-04, а за январь 10-05, то склеится это все в одну строчку или будет склейка с разделом на месяца? Если нет, то как этого добиться? Что бы данные склеивались только по месяцу. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.03.2016, 19:56 |
|
||
|
Склейка полей, в которых одинаковые первые 2 цифры, с разделом на месяца
|
|||
|---|---|---|---|
|
#18+
derilshows, после склейки какой вид должен быть у поля с данными 02, 02-09, 02-10, 04, 04-02, 05, 05-06 ? в частности, склеим три строки: 02, 02-09, 02-10. Что на выходе будет у этого поля? какое вид должен быть у остальных полей? надеюсь, вы же понимаете, что склейка приведет к уменьшению числа строк, соответственно, с данными других полей тоже придется что-то делать. что касается разделения на месяцы, то тут все зависит от того, как реализуете "склейку". можно сделать с учетом месяца и тогда данные за разный месяц будут обрабатываться отдельно. можно сделать общей кучей, тогда данные обработаются без учета месяца. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2016, 05:31 |
|
||
|
Склейка полей, в которых одинаковые первые 2 цифры, с разделом на месяца
|
|||
|---|---|---|---|
|
#18+
derilshows, а чтобы людям было приятнее вам отвечать - приведите юзабильный набор репрезентативных тестовых данных и желаемый вид результата на них с описанием логики получения итоговой выборки. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2016, 05:34 |
|
||
|
Склейка полей, в которых одинаковые первые 2 цифры, с разделом на месяца
|
|||
|---|---|---|---|
|
#18+
Щукина Анна, Есть БД, где в одной колонке записаны коды в виде: 10, 10-09, 10-10, 10-11, 15, 15-02, 15-03 и тд. Каждому значению соответсвтует месяц(в числовом формате). Я делаю SQL запрос, в котором выводится какие коды в каком месяце, с подсчетом сколько раз были вызваны. Запрос отображается в QTableView. Выходит формат: СКОЛЬКО РАЗ БЫЛ ВЫЗВАН, В КАКОМ МЕСЯЦЕ, КАКОЙ КОД . quantity, month, code Например, будет вывод: 125, 04, 10-09 4, 04, 10-10 93, 05, 15-02 43, 05, 15-03 Что я хочу: Все коды, которые начинаются на две одинаковые цифры, должны обьединиться в одну строку, и уже отображаться только этими первыми двумя цифрами. Но нужно сохранить сортировку по месяцам, дабы коды из разных месяцев не склеивались. Естественно, первая коллонка(сколько раз был вызван) при обьединении должна суммировать соответственные значения строк, что склеиваются. В итоге, должно выйти так: 129, 04, 10 136, 05, 15 Можно ли решить этот вопрос чисто SQL? Или нужно использовать QT модель? Очень прошу помочь, совсем не представляю как это сделать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2016, 11:50 |
|
||
|
Склейка полей, в которых одинаковые первые 2 цифры, с разделом на месяца
|
|||
|---|---|---|---|
|
#18+
derilshows, Код: sql 1. 2. 3. ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2016, 12:13 |
|
||
|
Склейка полей, в которых одинаковые первые 2 цифры, с разделом на месяца
|
|||
|---|---|---|---|
|
#18+
vyegorov, sum(quantity) не получается, так как количество я получаю благодаря count(). Теперь оно просто создает новый столбец, в котором показаны только первые 2 цифры. Но если был вывод: 04-02 04-03 04-05 04-06 То теперь он такой: 04 04 04 04 Как убрать дубликаты? Пробовал Distinct split_part(code, '-', 1), ошибка, не получается. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.03.2016, 18:57 |
|
||
|
|

start [/forum/topic.php?fid=53&msg=39198650&tid=1997334]: |
0ms |
get settings: |
7ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
168ms |
get topic data: |
11ms |
get forum data: |
3ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 204ms |
| total: | 454ms |

| 0 / 0 |
