2.1.2.88 F641, Row and table constructors

V0124:

The specification states the following:

 Subclause 7.1, "<row value constructor>":
  
 <explicit row value constructor> ::=
 <left paren> <row value constructor element> <comma>
 <row value constructor element list> <right paren>
 | ROW <left paren> <row value constructor element list> <right paren>
 | <row subquery>
  
 ...
  
 <row value constructor element> ::=
 <value expression>
  
 <contextually typed row value constructor> ::=
 <common value expression>
 | <boolean value expression>
 | <contextually typed value specification>
 | <left paren> <contextually typed value specification> <right paren>
 | <left paren> <contextually typed row value constructor element> <comma>
 <contextually typed row value constructor element list> <right paren>
 | ROW <left paren> <contextually typed row value constructor element list> <right paren>
  
 <contextually typed row value constructor element list> ::=
 <contextually typed row value constructor element>
 [ { <comma> <contextually typed row value constructor element> }... ]
 ...
  
 Conformance Rules
  
 Without Feature F641, "Row and table constructors", conforming SQL language shall not contain an <explicit row value constructor> that is not simply contained in a <table value constructor> and that contains more than one <row value constructor element>.
  
 Without Feature F641, "Row and table constructors", conforming SQL language shall not contain an <explicit row value constructor> that is a <row subquery>.
  
 Without Feature F641, "Row and table constructors", conforming SQL language shall not contain a <contextually typed row value constructor> that is not simply contained in a <contextually typed table value constructor> and that contains more than one <row value constructor element>.
  
 Without Feature F641, "Row and table constructors", conforming SQL language shall not contain a <contextually typed row value constructor> that is a <row subquery>.
  
 Subclause 7.15, "<subquery>":
  
 <row subquery> ::=
 <subquery>
  
 ...
  
 <subquery> ::=
 <left paren> <query expression> <right paren>
  
  
 Subclause 7.3, "<table value constructor>":
  
 <table value constructor> ::=
 VALUES <row value expression list>
  
 <row value expression list> ::=
 <table row value expression> [ { <comma> <table row value expression> }... ]
  
 <contextually typed table value constructor> ::=
 VALUES <contextually typed row value expression list>
  
 <contextually typed row value expression list> ::=
 <contextually typed row value expression>
 [ { <comma> <contextually typed row value expression> }... ]
  
 ...
  
 Conformance Rules
  
 Without Feature F641, "Row and table constructors", in conforming SQL language, the <contextually typed row value expression list> of a <contextually typed table value constructor> shall contain exactly one <contextually typed row value constructor> RVE. RVE shall be of the form "(<contextually typed row value constructor element list>)".
  
 Without Feature F641, "Row and table constructors", conforming SQL language shall not contain a <table value constructor>.
  

Microsoft SQL Server 2008 R2 and Microsoft SQL Server 2012 vary as follows:

Transact-SQL partially supports this feature. Transact-SQL does not support simple tables and has limited support for table constructors in general.

See [ISO/IEC9075-1:2011] for the definition of "table".