Q:

Oracle SQL CREATE TABLE#X syntax meaning

I'm working on studying for the Oracle DB 12c test but I'm a little lost on something that keeps popping up. 
I understand that 
CREATE #MYTABLE (x number); 

Creates a local temporary table however I'm not sure how it applies to the following syntax:
CREATE MYTABLE#OTHER (x number);

Could anyone explain? I'm unable to find any answers in search engines.

A:

Your current code looks more like SQL Server.  SQL Server uses the hash/pound symbol # to denote a temporary table.  For example:  
CREATE TABLE #temp (id int)

Oracle doesn't use the hash symbol.  For example:
--Global temp:
CREATE GLOBAL TEMPORARY TABLE temp(id number)
ON COMMIT DELETE ROWS;
--or ON COMMIT PRESERVE ROWS;

Temp tables are also different in SQL Server because they exist only during the context in which they are created (ie. a script execution), then they are automatically dropped.  In Oracle they persist much like normal tables. It's definitely worth reading and understanding the pros and cons about temp tables for whichever DBMS you are using.
Anyway, running this in Oracle will throw an error for an invalid character because tables can't start with #:
CREATE TABLE #MYTABLE (x number);

Running this will work, but it won't be a temporary table.  It will be a table named MYTABLE#OTHER:
CREATE TABLE MYTABLE#OTHER (x number);

