0

私は2つのテーブルを持っています:

create table dbo.Dates (
  Id int not null
    constraint Dates_Id_PK primary key clustered (Id),
  [DateValue] date not null
}

create table dbo.Posts (
  Id int identity not null 
    constraint Posts_Id_PK primary key clustered (Id),
  Created datetime not null,
  Title nvarchar (200) not null
)

これらのテーブルには、Date エンティティと Post エンティティがあります。

Dates の列 DateValue とその日付の投稿数を含むテーブルを取得するにはどうすればよいですか。

日時の Created 値を日付の DateValue と一致させる必要があります。

ありがとうございました、

ミゲル

4

2 に答える 2

1

あなたPostの s には時間のある日付があると想定しているため、それらを日付部分に切り詰める必要があります ( a のDateプロパティのようにDateTime):

from d in context.Dates
select new { 
             Date = d.DateValue,
             NrOfPosts = (from p in context.Posts
                 where EntityFunctions.TruncateTime(t.Created) == d.DateValue
                 select p).Count()
           }
于 2012-10-05T20:51:21.947 に答える
0

匿名型を使用できます。次のスニペットを試してください。

DateTime dateToMatch = GetDateToMatch();

using(YourEntities context = new YourEntities())
{
    var result = context.Dates.Where(d => d.DateValue == dateToMatch)
                              .Select(d => new { Date = d.DateValue, PostCount = d.Posts.Count() });
}
于 2012-10-05T01:05:23.297 に答える