在BIML中,嵌套查询可以使用'<#=code#>”语法实现。下面是一个示例,即在BIML代码中嵌套了一个SQL查询:
<#@ import namespace="System.Data" #>
<#@ import namespace="System.Data.SqlClient" #>
Source
<#SqlDataReader reader = new SqlCommand("SELECT MAX(TPC.DateOfBirth) FROM [DimOnlineSales] DOS JOIN [DimCustomer] DCU ON DOS.CustomerKey = DCU.CustomerKey JOIN (SELECT CustomerKey, MAX(OrderDate) as MaxOrderDate FROM [FactOnlineSales] GROUP BY CustomerKey) TPC ON TPC.CustomerKey = DCU.CustomerKey AND TPC.MaxOrderDate = DOS.OrderDate WHERE DCU.FirstName + ' ' + DCU.LastName = '+@[User::FullName]+'; ", (SqlConnection)(Variables.Connections["Source"].AcquireConnection(null))).ExecuteReader(); reader.Read();#>
<#=reader[0].ToString()#>
<#reader.Close();#>
上面的代码中,嵌套的SQL查询被引用为'<#=code#>”语法。在这个例子中,SQL查询用于检索与特定姓名相关的最新出生日期。注意,在BIML代码中,嵌套查询必须用cdetermined标记
上一篇:BIML中的分隔符
下一篇:BIML中的条件逻辑