It should return some results what am I doing wrong, please help.
No single row has the criteria you've specified, so no rows ought to be returned.
I suspect that you want something just a bit more sophisticated than you've described, but I can't quite figure out what that is... Can you try to rephrase your question in English (or even in Juris, I can translate ) and we'll see if we can cook up a solution for you?
Your data seems to have 5 columns, but only 3 are labeled. Assuming that columns 1, 2 & 3 are Prj_ID, Prj_Pid, and Tree_ID respectively, there are no rows where all 3 fields are equal. The first row (1302, 1066, 1066) would match if you changed 1302 to 1066. Perhaps you are trying to return rows where EITHER Prj_id = tree_id OR prj_pid = prj_id, in which case, try the following:
where (Prj_id = tree_id) OR
(prj_pid = prj_id)
Also, don't forget you have NULL values in your data - which may cause unexpected results depending on your business rules. If prj_id is null and tree_id is null for a record, then it will not be returned because the result of NULL = NULL is NULL.
If you are actually trying to pull data recursively, then you will need some self-joins to accomodate as pootle suggested - but I can't see any obvious advantage from such an operation (there still won't be any results) so I must be misunderstanding what you're looking for.