0

嘿伙计们,我希望你能帮助SELECTAS

CREATE PROCEDURE dbo.StoredProcedure2
SELECT
,   Announcements.ID
,   Announcement.CreateDate
,   Announcements.Announcement
,aspnet_Users.UserName 
,(SELECT Announcement_Read_State.Read_Date 
    FROM Announcement_Read_State 
    WHERE Announcement_Read_State.Announcement_ID = Announcements.ID 
    AND Announcement_Read_State.User_ID = 2) AS ReadState 
FROM Announcements INNER JOIN aspnet_User ON Announcements .Sender_User_ID = aspnet_User.UserName 
WHERE (Announcements.ID IN 

        ( SELECT Max(Announcements.ID) 
        FROM Thread_Participant INNER JOIN Announcements ON 
        Thread_Participant.ThreadId = Announcements.Announcement_ThreadId 
        WHERE MessageThreadParticipant.UserID = 2 
        GROUP BY ThreadParticipant.AnnouncementThreadId
        )

 ORDER BY Message.CreateDate DESC;
4

1 回答 1

5

它应该是:

CREATE PROCEDURE dbo.StoredProcedure2
AS  -- you were missing this

SELECT  -- you had an extra comma here
    Announcements.ID
,   Announcement.CreateDate
,   Announcements.Announcement
,aspnet_Users.UserName 
,(SELECT Announcement_Read_State.Read_Date 
    FROM Announcement_Read_State 
    WHERE Announcement_Read_State.Announcement_ID = Announcements.ID 
    AND Announcement_Read_State.User_ID = 2) AS ReadState 
FROM Announcements INNER JOIN aspnet_User ON Announcements .Sender_User_ID = aspnet_User.UserName 
WHERE (Announcements.ID IN 

        ( SELECT Max(Announcements.ID) 
        FROM Thread_Participant INNER JOIN Announcements ON 
        Thread_Participant.ThreadId = Announcements.Announcement_ThreadId 
        WHERE MessageThreadParticipant.UserID = 2 
        GROUP BY ThreadParticipant.AnnouncementThreadId
        )
)-- you were missing this one

 ORDER BY Message.CreateDate DESC;
于 2012-08-06T22:08:59.547 回答