Virtual Column is one of the new features introduced in Oracle 11g.The syntax for defining a virtual column is:
Column_Name [Datatype] [GENERATED ALWAYS] AS [Expression] [VIRTUAL]
Here, Data type: Column’s Data Type and Expression: SQL Expression
Though Virtual Columns appear to be like normal table columns they are defined by an expression and they derive their value from the result of the expression. The values of these virtual columns are not stored in database; instead they are calculated at run time dynamically.