Итак, я пытаюсь создать запрос, используя одну и ту же таблицу и столбец для двух разных функций.Я могу создать каждый запрос отдельно, и он будет работать гладко и эффективно.
первый запрос:
SELECT "y2018-cpsbsng"."fiscal_year" as "FY",
"y2018-cpsbsn"."county", "y2018-cpstxsc"."child_population" as "Child Population",
SUM("y2018-cpsbsng"."victims") AS "TOTAL ALLEGED"
FROM "y2018-cpstxsc" INNER JOIN "y2018-cpsbsng" USING ("county", "fiscal_year")
GROUP BY "y2018-cpsbsng"."fiscal_year", "y2018-cpsbsng"."county", "y2018-cpstxsc"."child_population"
ORDER BY "y2018-cpsbsng"."fiscal_year" ASC, "y2018-cpsbsng"."county" ASC
Выход 1:
FY county Child Population TOTAL ALLEGED
2008 Anderson 11237 808
2008 Andrews 3821 297
Второй запрос:
SELECT "fiscal_year", "county", "victims" as "Confirmed Victims"
FROM "y2018-cpsbsng"
WHERE "victims" in
(select "victims" FROM "y2018-cpsbsng"
where "y2018-cpsbsng"."confirmed_victims" = 'Confirmed Victim')
Выход 2:
fiscal_year county Confirmed Victims
2008 Anderson 8
2008 Andrews 1
Однако, как только я пытаюсь объединить оба запроса в один:
SELECT "fiscal_year","county", SUM("victims") AS "TOTAL ALLEGED",
victims
FROM "y2018-cpsbsng"
WHERE victims IN
(SELECT "victims"
FROM "y2018-cpsbsng"
WHERE "y2018-cpsbsng"."confirmed_victims" = 'Confirmed Victim')
GROUP BY "fiscal_year", "county", victims
ORDER BY "fiscal_year" ASC,"county" ASC
Это происходит (окончательный вывод):
fiscal_year county TOTAL ALLEGED victims
2008 Anderson 247 247
2008 Andrews 561 561
И если яизбавиться от GROUP BY .... "жертвы" (которая, как я полагаю, является причиной появления повторяющихся номеров), я получу сообщение о том, что {column "y2018-cpsbsng.victims" должно появиться в предложении GROUP BY или использоваться вагрегатная функция LINE 1: ... ear "," county ", SUM (" жертва ")" TOTAL ALLEGED "," жертва "} и любой другой способ, которым я пытаюсь это исправить, ошибка говорит о том, что {больше чем одна строкавозвращается подзапросом, используемым в качестве выражения}
Может кто-нибудь сказать мне, как я могу эффективно объединить эти два запроса? Заранее большое спасибо.