나는이SQL Server 검색, 전체 행 수를 반환하는 방법?
SELECT DISTINCT
a.ArticleID,
COUNT(*) AS KeywordMatch,
a.Headline,
a.ShortDescription,
a.CategoryID,
a.ArticleSectionImage,
a.DatePublished
FROM
Article a
JOIN SearchWords sw ON a.ArticleID = sw.ArticleID
WHERE
EXISTS
(
SELECT
1
FROM
iter_charlist_to_tbl(@temp, ' ') s
WHERE
s.nstr = sw.SearchWord
)
AND
a.ArticleState = 3
GROUP BY
a.ArticleID, a.Headline, a.ShortDescription, a.CategoryID, a.ArticleSectionImage, a.DatePublished
ORDER BY (KeywordMatch) DESC, (a.DatePublished) DESC
겼고, post 나는 누구나 페이징을 만들 수 Linq에 - 투 - SQL과 함께이 사용하고 있습니다. 문제는, 내가 얼마나 많은 레코드 내 검색 반환 (총 행), 사용자에 대한 올바른 화살표를 표시 알아야합니다.
이 내 Linq에 - 투 - SQL 쿼리는 다음과 같습니다
int iPageNum = pageNumber;
int iPageSize = (int)pageSize;
results = data.SearchArticles(searchString).Skip((iPageNum - 1) * iPageSize).Take(iPageSize).ToList();
어떤 아이디어?
Linq-to-SQL이 데이터베이스의 모든 레코드를 가져오고 있습니까? 아니면 내가 필요한 레코드만을 선택하는 쿼리를 생성합니까? 어떻게 쿼리를 수행 할 수 있습니까? 당신이 data.SearchArticles의 부분 어쨌든 전체 세트를 가져 오는되기 때문에
어떤 유형의 고객을 쓰고 계십니까? 이미 사용할 수있는 페이징 구성 요소가 이미 있음을 알 수 있습니다. –
새로운 "신문"사이트에 검색 기능을 추가했습니다. 그래서 나는 모든 것을 스스로하고있다. – Patrick