Cześć.
Mam problem z pobraniem danych z dwóch powiązanych tabel.
Tabele:
CREATE TABLE person (
id serial4 NOT NULL,
"name" varchar(255) NOT NULL,
surname varchar(255) NOT NULL,
CONSTRAINT person_pkey PRIMARY KEY (id)
);
CREATE TABLE worked_hours (
id serial4 NOT NULL,
person_id int4 NOT NULL DEFAULT nextval('person_id_seq'::regclass),
"month" int4 NOT NULL,
"year" int4 NOT NULL,
count int4 NOT NULL,
CONSTRAINT worked_hours_pkey PRIMARY KEY (id),
CONSTRAINT fk_92b3b0ad217bbb47 FOREIGN KEY (person_id) REFERENCES public.person(id)
);
W projekcie mam stworzone encje odpowiadające tabelom.
W skrócie: tabele person i worked_hours są powiazane polami: person.id <--> worked_hours.person_id.
Potrzeuję pobrać infomację o liczbie przepracowanych godzin (worked_hours.count) na podstawie osoby i daty (person.id, worked_hours.year, worked_hours.month).
Zwrócone dane powinny być takie same jak te zwrócone przez zapytanie:
select *
from person p
left join worked_hours wh on p.id = wh.person_id
where wh.person_id = 1
and wh."month" = 1
and wh."year" = 2022;
Jak to najłatwiej zrobić (używając Doctrine)?
Z góry dziękuję za pomoc.