I'm on Oracal 9 and don't write SQL directly so my reply may not help. However, it may give you some ideas.
Since you haven't identified which tables/columns you are currently using in your report I'm just going to give you ideas.
If you're looking to create a simple report with only those employees between 12 and 18 the easiest choice is to use the Employees table and the Age column. Then use Selections and specify: data field Employees.Age is between 12 and 18. Because you are using the Employees table this will only reflect current employees.
The other choice is to use Personal Data and the Birthdate column (query). Create a derived field for Age:
Trunc((months_between (sysdate, "PD"."Birthdate"))/12, 0). Then write the Selection similar to the above version: derived field Age is between 12 and 18.
Sorry if I didn't provide the answer/direction you were looking for.