If you use SQL*PLus, try another tool like TOAD. If you create another table with one record and use this table instead of dual, you get in the first select also 8 rows.
In SQL*Plus a select from dual always returns one row. I think it is for optimization, but you can get unexpected (or wrong) results.
Bookmarks