SQLite выбрать и считать из другой таблицы с подобным - PullRequest
0 голосов
/ 07 марта 2020

У меня есть две таблицы:

ЧАСТИ СТОЛОВ

           ------------------------------
           idpers | name      | firstname
           ------------------------------
           1      | John      | Miad
           2      | Eddy      | Rowan
           3      | Phil      | Barzoon
           ...

ЗАДАЧИ СТОЛОВ

           -----------------------------------------------------------------------
           id_td  |  date     | task           | protocol
           -----------------------------------------------------------------------
           211    | 13-12-19  | Mount          | 13-12-19•John Miad→13-12-19•Eddy Rowan
           348    | 14-12-19  | Fix and clean  | 14-12-19•Eddy Rowan
           256    | 15-12-19  | Lubricate      | 15-12-19•Phil Barzoon
           265    | 15-12-19  | First run      | 15-12-19•Phil Barzoon→15-12-19•John Miad
           ...

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

Просмотр Пример:

enter code here
           ------------------------------------------------------------------------
              date  | idpers    | name      | firstname | total_tasks 
           ------------------------------------------------------------------------
           13-12-19 | 1         | John      | Miad      |  7    
           13-12-19 | 2         | Eddy      | Rowan     |  3    
           13-12-19 | 3         | Phil      | Barzoon   |  8    
           14-12-19 | 6         | Andreas   | werner    |  5   
           ...

Большое спасибо за любую помощь.

1 Ответ

1 голос
/ 07 марта 2020

Если формат столбца protocol всегда такой же, как в ваших данных образца, вы можете присоединиться к таблицам и группировать по дате и человеку:

select t.date, p.idpers, p.name, p.firstname, count(*) total_tasks 
from persons p inner join tasks t
on t.protocol  || '→' like '%•' || p.name || ' ' || p.firstname || '→%'
group by t.date, p.idpers, p.name, p.firstname

См. Демонстрационную версию .

...