У меня есть две таблицы: BORDERS with country1, county2, COUNTRYPOPS со страной, годом и населением, и я хочу для каждой страны перечислить ее население и общее население всех соседних стран. (И если у него нет соседних стран, NULL) Пока я могу найти максимальное количество населения для каждой страны и сколько соседей в каждой стране, но я не могу найти способ подытожить население всех соседних стран. Есть идеи?подсчитывать и суммировать значения sql
SELECT country, MAX(population) FROM COUNTRYPOPS GROUP BY 1 ORDER BY 1
---------------
SELECT countries, COUNT(countries) as have_borders
FROM
(SELECT country1 AS countries
FROM borders
UNION ALL
SELECT country2
FROM borders) t
GROUP BY countries
ORDER BY countries;
Является ли этот MySql или SQL Server? Пожалуйста, отметьте соответствующим образом. –
Является ли 'BORDERS' двунаправленным? Например. одна строка с «США», «КАНАДА» и еще одна строка с «КАНАДА», «США», или она имеет только строки в одном (произвольном) направлении? – Andreas
да это двунаправленный – jack