Подстановочный знак выбора строки MySQL - PullRequest
2 голосов
/ 05 ноября 2019

У меня есть таблица, похожая на эту

|--------------------------------------------|------------------|
|      Column 1                              |     column 2     |
|--------------------------------------------|------------------|
|/fixed/sample_1                             |         10       |
|--------------------------------------------|------------------|
|/fixed/sample_1/                            |         15       |
|--------------------------------------------|------------------|
|/fixed/sample_1/sp1_level2                  |         10       |
|--------------------------------------------|------------------|
|/fixed/sample_1/sp1_level2/sp1_level3       |         20       |
|--------------------------------------------|------------------|
|/fixed/sample_2/                            |         25       |
|--------------------------------------------|------------------|
|/fixed/sample_2/sp2_level2/sp2_level3       |         20       |
|--------------------------------------------|------------------|
|/fixed/sample_3                             |         30       |
|--------------------------------------------|------------------|

Я хочу использовать оператор выбора, чтобы выбрать из столбца 1 и добавить значения для столбца 2, чтобы моя результирующая таблица была

|--------------------------------------------|------------------|
|      Column 1                              |     column 2     |
|--------------------------------------------|------------------|
|/fixed/sample_1/                            |         55       |
|--------------------------------------------|------------------|
|/fixed/sample_2/                            |         45       |
|--------------------------------------------|------------------|
|/fixed/sample_3/                            |         30       |
|--------------------------------------------|------------------|

Есть ли способ сделать это?

спасибо

1 Ответ

3 голосов
/ 05 ноября 2019

Я думаю, вы можете использовать substring_index() и group by:

select substring_index(col1, '/', 3) as new_col1,
       sum(col2)
from t
group by new_col1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...