아티보드를 사용하시는분들중에 일부 유저들이 고민하는부분중에 최근글뽑기에서
1개이상의 게시글을 추출할때 활용하면 서버 부하와 로딩속도에 지장을 덜주는 개인적인 활용방안을
올려 보겠습니다.
저장프로시져중에서 [MPLUS_GET_BOARD_LIST_NOTICE] 프로시져가있는데 기존것은 건들지 마시고
새로만들기로 하세요!
MS-SQL 디비에서 저장프로시져로 가시면 아티보드 저장프로시져가 나열이 됩니다
마우스 우측버튼을 누르시면 새 저장 프로시저를 선택하시면 프로시져 창이 나옵니다.
제가 만들것은 2개의 보드에서 최근글을 뽑는 방법을 하겠습니다.
※ 활용하실때 카피하시면 파란글(설명글)은 삭제하셔야 합니다.
CREATE PROCEDURE [MPLUS_GET_BOARD_LIST_NEW]
@strBoardID1 VARCHAR(20), <-- 1번 게시판
@strBoardID2 VARCHAR(20), <-- 2번 게시판
@strOrderBy VARCHAR(20), <-- 게시글 정령 선택
@intCount INTEGER = 5 <-- 최근글을 뽑을 수량
AS
SET NOCOUNT ON
DECLARE @SP_strSQLQuery_Field NVARCHAR(2000)
DECLARE @SQL_Query_Where NVARCHAR(4000)
DECLARE @SQL_Query NVARCHAR(4000)
SET @SQL_Query_Where = ' WHERE [strBoardID] IN (''' + @strBoardID1 + ''',''' + @strBoardID2 + ''' ) AND [bitDelete] = ''0'' AND [bitBad] = ''0'' AND [bitCheck] = ''1'' '
SET @SP_strSQLQuery_Field = ' [intSeq], [intIndex], [intThread], [intDepth], [strLoginID], [intCategory], [strName], [strNickName] = (SELECT [strNick] FROM [MPLUS_MEMBER_LIST] WHERE [strLoginID] = [MPLUS_BOARD].[strLoginID]), [strPassword], [strEmail], [strHomepage], [strSubject], [strContent], '
+ ' [strSmallSubject], [strSmallContent], [strLink1], [strLink2], [strBoardBg], [strIpAddr], [bitDelete], [bitHtml], [bitHtmlBr], [bitText], [bitNotice], [bitReMail], [bitSecret], [strSecretID], [bitBad], [intRead], '
+ ' [intVote], [intComment], [intDefaultFileCount], [intFileCount], [strFileCode], [dateCmtDate], [dateRegDate], '
+ ' [strMarkImage] = (SELECT [b].[strAvata] FROM [MPLUS_MEMBER_LIST][a] INNER JOIN [MPLUS_GROUP][b] ON [a].[strGroup] = [b].[strGroupCode] WHERE [a].[strLoginID] = [MPLUS_BOARD].[strLoginID]), '
+ ' [strUserImage] = (SELECT [strNameFile] + ''|'' + [strPhotoFile] FROM [MPLUS_MEMBER_LIST] WHERE [strLoginID] = [MPLUS_BOARD].[strLoginID]), '
+ ' [strFilename] = (SELECT TOP 1 CONVERT(VARCHAR(10), [intNum]) + ''|'' + [strFileName] + ''|'' + CONVERT(VARCHAR(10), [intFileSize]) + ''|'' + CONVERT(VARCHAR(10), [intFileDown]) FROM [MPLUS_BOARD_FILE] WHERE [intFileType] = ''1'' AND [strFileCode] = [MPLUS_BOARD].[strFileCode] ORDER BY [intNum] ASC), '
+ ' [strFileImage] = (SELECT TOP 1 [strFileName] + ''|'' + CONVERT(VARCHAR(10), [imgWidth]) + ''|'' + CONVERT(VARCHAR(10), [imgHeight]) + ''|'' + CONVERT(VARCHAR(10), [intFileSIze]) FROM [MPLUS_BOARD_FILE] WHERE [intFileType] = ''0'' AND [strFileCode] = [MPLUS_BOARD].[strFileCode] ORDER BY [intNum] ASC), '
+ ' [strCategory] = (SELECT [strCategory] FROM [MPLUS_BOARD_CATEGORY] WHERE [strBoardID] = [MPLUS_BOARD].[strBoardID] AND [intCategory] = [MPLUS_BOARD].[intCategory]), '
+ ' [strAddData1], [strAddData2], [strAddData3], [strAddData4], [strAddData5], [strAddData6], [strAddData7], [strAddData8], [strAddData9], [strAddData10] '
SET @SQL_Query = 'SELECT TO
번호 | 제목 | 닉네임 | 조회수 | 작성일 |
---|
댓글 2