Как я могу добавить значения для подсчета в sql? - PullRequest
0 голосов
/ 24 апреля 2020

enter image description here

У меня есть следующий SQL Запрос, связанный с ER-диаграммой, показанной на изображении.

Select count(distinct(tkey)) as fromAustria 
from theses 
where ikey in (select ikey 
               from institutions 
                   right join countries on institutions.cokey = countries.cokey 
               where countries.name = 'Austria'); 

Как я могу получить это информация?

Сколько отдельных тезисов и статей опубликовали в настоящее время лица, связанные с австрийскими учреждениями sh? (верните один счет)

У меня всегда есть отдельные тезисы, но как я могу добавить к счету отдельные статьи?

1 Ответ

0 голосов
/ 24 апреля 2020

Ты в значительной степени там. Если между таблицами «документы» и «тезисы» нет прямой связи между ключами, вам потребуется go через таблицу «authpapers»

Select count(distinct(tkey)) as fromAustria, count(distinct(pkey)) as papers
from theses
Left/Inner/right join Authpapers on authpapers.key = theses.key
Left/Inner/right join papers on  papers.key = authpapers.key
where ikey in (select ikey 
               from institutions 
                   right join countries on institutions.cokey = countries.cokey 
               where countries.name = 'Austria'); 
...