Я сам учусь использовать вершину, и мне интересно, есть ли возможность использовать в интерактивных отчетах sql-запрос для подсчета от другого, что со значением id = column_1?
Как вы можете видеть на картинке.
Мой фактический запрос:
`
select
LIB_KSIAZKA.KSIAZKAID as "Id Książki",
LIB_KSIAZKA.TYTUL as "Tytuł",
LIB_KSIAZKA.IMIE as "Imię autora",
LIB_KSIAZKA.NAZWISKO as "Nazwisko autora",
LIB_KSIAZKA.GATUNEK as "Gatunek",
LIB_KSIAZKA.OCENA as "Ocena" ,
(SELECT Count (e.egzemplarzid)
from lib_egzemplarz e INNER JOIN lib_ksiazka k ON e.ksiazkaid=k.ksiazkaid
WHERE e.status='DOSTĘPNA' AND e.ksiazkaid= :P3_ID ) as "Liczba dostępnych egzemplarzy"
from LIB_KSIAZKA LIB_KSIAZKA;
` Как вы можете видеть, как он должен считаться с тем же идентификатором столбца1, что и значение строки. в счет k.ksiazkaid = 1,2,3,...
Я попытался установить конкретный идентификатор столбца1, но не уверен, как или даже возможно поместить его в запрос.
Я не уверен, какой результат вы ожидаете, но мне кажется, что вам нужно избавиться от внутреннего соединения в подзапросе и сопоставить его с таблицей в основном запросе. Кроме того, неясно, действительно ли where
условие (я) в подзапросе должно быть удалено.
Что касается псевдонима таблицы: его цель - упростить чтение запроса. Использование псевдонима, который совпадает с именем таблицы (from LIB_KSIAZKA LIB_KSIAZKA
), совсем не помогает.
Я бы предложил что-то вроде этого:
select
a.ksiazkaid as "id książki",
a.tytul as "tytuł",
a.imie as "imię autora",
a.nazwisko as "nazwisko autora",
a.gatunek as "gatunek",
a.ocena as "ocena" ,
--
(select count (e.egzemplarzid)
from lib_egzemplarz e
where e.ksiazkaid = a.ksiazkaid --> correlate subquery to "main" table
and e.status = 'DOSTĘPNA'
and e.ksiazkaid = :P3_ID --> should that be moved out ...
) as "liczba dostępnych egzemplarzy"
from lib_ksiazka a
-- where a.ksiazkaid = :P3_ID --> ... down here?