我想创建一个包含三个不同表的视图。每个表都包含一些重复的值。为了删除重复项,我使用了UNION,但它会导致性能问题。 CREATE VIEW [dbo].SELECT * FROM A SELECT * FROM B SELECT * FROM C
END 如果我使用Select * from A,性能会更快但是当使用上面的查询时,会产生性能问题。我希望从三个表中删除重复项,并提高视图的性能 示例
在我的应用程序中,我使用实体框架(EF) 5.0、代码第一方法和SQLServer CE 4.0数据库。然而,在应用程序启动方面,我面临着一个主要的性能问题.我在互联网上搜索,发现文章解释了哪些操作会影响启动性能,其中之一就是视图生成。因此,我研究了如何在编译时生成视图,并在运行时将它们链接到EF,而不是在运行时创建视图。但是,当我使用Server运行应用程序时,它总是生成以下异常:
EntityContainer 'D
让我们考虑一个简单的查询: select distinct p.idinner join Users u on u.id = p.owneruseridinner join Badges b on b.UserId = u.Id
where CommentCount > 1 and p.id < 100000 当我直接运行这个查询时:elapsed time = 7667 ms.,但是如果我将这个查询包装到一个函数中: alter function getPostsWher