Я пытаюсь добавить 3 фильтра ко второму коду кода из приведенного ниже кода, чтобы получить счетчик по месяцам по годам, отфильтрованный по идентификатору состояния <>, региону и типу.Я новичок в SQL и просто не могу найти способ объединить оба кода, чтобы заставить его работать.Я потратил 5 часов, пытаясь найти решение.Любая помощь будет принята с благодарностью. Мне нужен подсчет даты, созданной из jd.OrganisationAddress, но для ее фильтрации мне нужно связать поле OrganisationID из jd.OrganisationAddress с идентификатором поля таблицы jd.Organisation, эта таблица имеет поле StatusID, которое ядолжно быть <> 4.Затем для поля типа я должен соответствовать jd.OrganisationOrganisationType.OrganisationID из таблицы jd.OrganisationOrganisationType. Мне нужно связать это с помощью jd.OrganisationOrganisationType.OrganisationTypeID = jd.OrganisationTygan..OrganisationType.Name) = 'Банк'));затем, наконец, для региона я должен связать его с адресной таблицей через jd.OrganisationAddress.AddressID = jd.Address.ID затем из таблицы адресов мне нужно сопоставить регион, связав jdAddress.countryID с JD.country_region.countryID затем jdcountry.region.regionID к идентификатору поля таблицы jd_region, а затем, если jd_Region.name = "Северная Америка"
SELECT
jd.Organisation.StatusID
, jd.Region.Name AS Region
, jd.OrganisationType.Name AS Type
FROM
jd.Region
, ((((jd.Organisation
INNER JOIN
jd.OrganisationAddress
ON
jd.Organisation.ID = jd.OrganisationAddress.OrganisationID)
INNER JOIN
jd.Address
ON
jd.OrganisationAddress.AddressID = jd.Address.ID)
INNER JOIN
jd.Country
ON
jd.Address.CountryID = jd.Country.ID)
INNER JOIN
jd.OrganisationOrganisationType
ON
jd.Organisation.ID = jd.OrganisationOrganisationType.OrganisationID)
INNER JOIN
jd.OrganisationType
ON
jd.OrganisationOrganisationType.OrganisationTypeID = jd.OrganisationType.ID
WHERE
(((jd.Organisation.StatusID)<>4)
AND
((jd.Region.Name)='North America')
AND
((jd.OrganisationType.Name)='Bank'));
select year(datecreated),
sum(case when month(datecreated) = 1 then 1 else 0 end) Jan,
sum(case when month(datecreated) = 2 then 1 else 0 end) Feb,
sum(case when month(datecreated) = 3 then 1 else 0 end) Mar,
sum(case when month(datecreated) = 4 then 1 else 0 end) Apr,
sum(case when month(datecreated) = 5 then 1 else 0 end) May,
sum(case when month(datecreated) = 6 then 1 else 0 end) Jun,
sum(case when month(datecreated) = 7 then 1 else 0 end) Jul,
sum(case when month(datecreated) = 8 then 1 else 0 end) Aug,
sum(case when month(datecreated) = 9 then 1 else 0 end) Sep,
sum(case when month(datecreated) = 10 then 1 else 0 end) Oct,
sum(case when month(datecreated) = 11 then 1 else 0 end) Nov,
sum(case when month(datecreated) = 12 then 1 else 0 end) Dec
from jd.OrganisationAddress
group by year(datecreated)
order
по годам (дата создана) ASC