Not sure if this is specifically a join question or maybe it's a sub query. Here's the query I'm currently using:

SELECT
tbl45.col1,
tbl45.col4
FROM tbl45 LEFT JOIN tbl3 ON tbl45.col3 = tbl3.col1
WHERE ((tbl45.col1)<>31) AND (tbl45.col2)=(SELECT col2 FROM tbl45 WHERE col1=31)) AND (tbl3.col22)=0) AND (tbl45.col41)=0));

When there are no matching records in tbl3 I'd like it to still show the rest of the data. But with the tbl3.col22=0 it won't. Is there a way around this?