如果赦免标题是不正确的..
如何写下面的SQL查询使用LINQ没有将它在多个部分为sql?
select BookName,
Author,
TotalCopies=(select COUNT(*)
from tbEHBookCopies c
where c.BookID=b.BookID)
from dbo.tbEHBooks b
如果赦免标题是不正确的..
如何写下面的SQL查询使用LINQ没有将它在多个部分为sql?
select BookName,
Author,
TotalCopies=(select COUNT(*)
from tbEHBookCopies c
where c.BookID=b.BookID)
from dbo.tbEHBooks b
我不知道你所说的多个部分的意思。 如果你的意思,它应该是在一个单一的查询,那么你可以这样做:
var allBooks = db.tbEHBooks.Select(x => new
{
x.BookName,
x.Author,
x.TotalCopies = db.tbEHBookCopies.Select(y => x.BookID == y.BookID).Count()
});
使用查询语法加盟和分组。 LINQ-SQL是一点点不同,当谈到分组。 这个语法的好处是,它很容易在多个表中加入。 它看起来更像是一个SQL查询只“从”是第一位的,而“选择”排在最后。
var bookQry = from b in db.tbEHBooks
join c in db.tbEHBookCopies on b.BookID equals c.BookID
group b by b into books
select new { books.Key.BookName,
books.Key.Author,
TotalCopies = books.Count() };