TBL4.PROPERTY_NAME(+)='Id'
có nghĩa là khi dòng được nối bên trong, thì giá trị phải là 'Id' , nhưng khi dòng được nối bên ngoài, điều kiện được đánh giá là đúng
tuy nhiên bạn nên viết lại câu lệnh theo tiêu chuẩn như sau:
SELECT *
FROM TBL1
JOIN TBL2 ON TBL2.Type_ID = TBL1.Type_ID
JOIN TBL3 ON TBL3.Project_ID = TBL1.Project_ID
LEFT JOIN TBL4 ON TBL4.Entity_ID=TBL1.Entity_ID AND TBL4.PROPERTY_NAME='Id'