Alih-alih memfilter pada userid yang tepat, Anda harus memeriksa apakah pengguna terkait dengan masalah tersebut, seperti ini:
select
t.title,
group_concat(
case when tu.type = 1 then
concat(u.firstname, ' ', u.lastname)
end) as creator,
t.priority,
t.date,
group_concat(
case when tu.type = 2 then
concat(u.firstname, ' ', u.lastname)
end SEPARATOR ' - ') as users
from
tickets t
inner join tickets_users tu on tu.ticketid = t.id
inner join users u on u.id = tu.userid
where
exists (
select
'x'
from
tickets_users tu2
where
tu2.ticketid = t.id and
tu2.userid = <youruserid> and
tu2.type = 1)
group by
t.id;
Untuk <youruserid>
anda dapat mengisi user id yang anda inginkan. Kueri ini akan mengembalikan semua masalah yang dilaporkan oleh pengguna tersebut (tipe =1). Namun untuk semua masalah tersebut, semua pengguna terkait tetap dikembalikan, jadi hasil kueri Anda masih lengkap.