所以我有一个像这样的表结构的遗留数据库(简化)
Create Table Transaction
{
TransactionId INT NOT NULL IDENTITY(1,1) PRIMARY KEY,
ReplacesTransactionId INT
..
..
}
所以我想创建一个索引视图,以便以下示例仅返回第二个角色(因为它替换了第一个角色)
Insert Into Transaction (TransactionId, ReplacesTransactionId, ..) Values (1,0 ..)
Insert Into Transaction (TransactionId, ReplacesTransactionId, ..) Values (2,1 ..)
有多种方法可以创建此查询,但我想创建一个索引视图,这意味着我不能使用子查询、左连接或例外。可以是一个示例查询(使用 LEFT JOIN)。
SELECT trans1.* FROM Transaction trans1
LEFT JOIN Transaction trans2 on trans1.TransactionId = trans2.ReplacesTransactionId
Where trans2.TransacationId IS NULL
显然,我坚持使用数据库的结构,并希望使用数据来提高应用程序的性能。
有什么建议么?