SQL查询合并结果

时间:2020-10-27 10:56:54

标签: c# sql-server

我有以下内容:

void Main()
{
    // I need to get the below query, but with the newest comment date as well of each post.
    
    
    // Gives me all the posts by the member
    var member_id = 1139;
    var query = (from posts in Ctm_Forum_Posts
                join category in Ctm_Forum_Categories on posts.FK_Categori_ID equals category.Id
                where posts.Archieved == false 
                && posts.Deleted == false 
                && posts.FK_Member_ID == member_id
                select new ForumPostModel(){
                    Id = posts.Id,
                    BodyText = posts.BodyText,
                    Summary = posts.Summary, 
                    Title = posts.Title,
                    Created = posts.Created,
                    Updated = posts.Updated,
                    CategoryName = category.Title,
                });

    // this gives the newest comment date (registration_timestamp) from a specific post with id = 1
    var NewestCommentDate = (from comments in Ctm_Comments
                             join posts in Ctm_Forum_Posts on comments.Page_ID equals posts.Id
                             where posts.Id == 1 && comments.Deleted == false
                             orderby comments.Reqistration_timestamp descending
                             select comments.Reqistration_timestamp).FirstOrDefault();
}

// Model of the result.

public class ForumPostModel{
    public int Id { get; set; }
    public string Title { get; set; }
    public string BodyText { get; set; }
    public string Summary { get; set; }
    public DateTime Created { get; set; }
    public DateTime Updated { get; set; }
    public string CategoryName { get; set; }
    public DateTime LatestCommentTime { get; set; }
}

现在两个查询都能正常工作,但是我的问题是性能很糟糕,所以我试图将结果合并到一个查询中,所以我的加载时间会更少。

我尝试搜索有关工会的信息,但一直无法弄清。

0 个答案:

没有答案