Row_Number () и T-SQL View - PullRequest
       15

Row_Number () и T-SQL View

3 голосов
/ 03 сентября 2010

Я пытаюсь реализовать разбиение на страницы для представления в T-SQL:

with TH_VW_UserFollowing  as
(
Select  FollowerID, 
        FollowingID, 
        FollowingFullName, 
        FollowingImage, 
        FollowingUserName,
        dbo.GetUserFollowers(FollowingID) AS Followers,
        ROW_NUMBER() OVER (order by dbo.GetUserFollowers(FollowingID) DESC ) AS 'RowNumber'   
from dbo.TH_VW_UserFollowing 
where FollowerID = @UserID 
)
Select  FollowerID, 
        FollowingID, 
        FollowingFullName, 
        FollowingImage, 
        FollowingUserName, Followers
from dbo.TH_VW_UserFollowing
Where RowNumber BETWEEN @startIdx AND @endIdx

По какой-то причине я получаю следующие ошибки:

Сообщение 207, Уровень 16,Состояние 1, процедура GetUserUsersFollowing, строка 36
Неверное имя столбца 'RowNumber'.Сообщение 207, уровень 16, состояние 1, процедура
GetUserUsersFollowing, строка 36 Неверное имя столбца 'RowNumber'.Msg
207, уровень 16, состояние 1, процедура GetUserUsersFollowing, строка 34
Неверное имя столбца 'Followers'.

Я использовал тот же код для таблицы, но я нене знаю, что здесь происходит.чего-то не хватает ...

Спасибо.

Ответы [ 2 ]

2 голосов
/ 03 сентября 2010

Вы выбираете из таблицы , а не CTE, который вы определили выше. Вы должны делать в вашем последнем SELECT "FROM TH_VW_UserFollowing". Я бы также посоветовал дать вашему CTE другое имя из таблицы.

1 голос
/ 03 сентября 2010

Почему вы называете cte таким же, как имя представления?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...