How can you compare tbl.id = [multiple rows]?
You need to use the "Exists" or " IN " syntax. For example:
SELECT tbl.id
FROM table1 tbl
WHERE ( [some condition] AND tbl.id = [a single id number])
OR ( NOT [some condition] AND tbl.id IN ( SELECT tbl2.id
FROM table2 tbl2
WHERE [some other condition])