Restore ClauseRestore RMAN backups and copies.
  
  Syntax:
   RESTORE
   [(] restoreObject [(restoreSpecOperand [restoreSpecOperand]…] [)]… 
   [ CHANNEL ['] channel_id ['] 
   | PARMS [=] 'channel_parms' 
   | FROM { BACKUPSET | DATAFILECOPY } 
   | untilClause 
   | FROM TAG [=] ['] tag_name ['] 
   | VALIDATE 
   | DEVICE TYPE deviceSpecifier [, deviceSpecifier]… 
   .
   .
   .
   ]…;
   restoreObject::=
     { CONTROLFILE [TO 'filename']
     | DATABASE 
       [SKIP [FOREVER] TABLESPACE 
        ['] tablespace_name ['] [, ['] tablespace_name [']]…
       ]
     | DATAFILE datafileSpec [, datafileSpec]…
     | TABLESPACE ['] tablespace_name ['] [, ['] tablespace_name [']]…
     | archivelogRecordSpecifier
     | SPFILE [TO [PFILE] 'filename']
     }
   restoreSpecOperand::=
     { CHANNEL ['] channel_id [']
     | FROM TAG [=] ['] tag_name [']
     | PARMS [=] 'channel_parms'
     | FROM 
       { AUTOBACKUP 
         [{ MAXSEQ | MAXDAYS } [=] integer)]… 
       | 'media_handle'
       }
     }
Examples
Full DR recovery - Full Example (restoring to a different machine) 
Point in time recovery - Full Example (restoring to the same machine / different date/time) 
Restore and recover the whole Database:
RMAN> STARTUP FORCE MOUNT; RMAN> RESTORE DATABASE; RMAN> RECOVER DATABASE; RMAN> ALTER DATABASE OPEN;
Restore and recover a Tablespace:
RMAN> SQL 'ALTER TABLESPACE users OFFLINE'; RMAN> RESTORE TABLESPACE users; RMAN> RECOVER TABLESPACE users; RMAN> SQL 'ALTER TABLESPACE users ONLINE';
Restore and recover a Datafile:
RMAN> SQL 'ALTER DATABASE DATAFILE 64 OFFLINE'; RMAN> RESTORE DATAFILE 64; RMAN> RECOVER DATAFILE 64; RMAN> SQL 'ALTER DATABASE DATAFILE 64 ONLINE';
Restore the Control file, (to all locations specified in the parameter file) then restore the database, using that control file:
STARTUP NOMOUNT;
  RUN
  {
  ALLOCATE CHANNEL c1 DEVICE TYPE sbt;
  RESTORE CONTROLFILE;
  ALTER DATABASE MOUNT;
  RESTORE DATABASE;
}
Restore Validation confirms that a restore could be run, by confirming
    that all database files exist and are free of physical and logical corruption,
    this does not generate any output.
  Example:
RMAN> RESTORE DATABASE VALIDATE;
"Don't count the days, make the days count" ~ Muhammad Ali
Related Oracle Commands:
BACKUP - Back up database files, archive logs, backups, or copies. 
CROSSCHECK - Check whether backup items still exist. 
LIST - List backups and copies 
RECOVER - Perform media recovery from RMAN backups and copies. 
REPORT - Report backup status: database, files, backups 
RUN - Some RMAN commands are only valid inside a RUN block. 
SET - Settings for the current RMAN session. 
SHOW - Display the current configuration