diff --git a/DB_SQL/Fix for Guild_system.txt b/DB_SQL/Fix for Guild_system.txt index fac37b0..e6b1ff0 100644 --- a/DB_SQL/Fix for Guild_system.txt +++ b/DB_SQL/Fix for Guild_system.txt @@ -1,22 +1,15 @@ +USE [pangya] +GO +/****** Object: StoredProcedure [pangya].[ProcGetGuilds] Script Date: 26/11/2023 16:14:53 ******/ +SET ANSI_NULLS ON +GO +SET QUOTED_IDENTIFIER ON +GO ALTER PROCEDURE [pangya].[ProcGetGuilds] - @PAGE INT = 1, - @SEARCH NVARCHAR(255) = '%' AS BEGIN SET NOCOUNT ON; - - DECLARE @LINHAS BIGINT = 0; - DECLARE @SORT INT = 0; - - SELECT @LINHAS = COUNT_BIG(a.GUILD_UID) - FROM pangya.pangya_guild a - INNER JOIN pangya.account b ON a.GUILD_LEADER = b.[uid] - WHERE - a.GUILD_NAME LIKE N'%' + @SEARCH + N'%' - AND (a.GUILD_STATE NOT IN(4, 5) OR a.GUILD_CLOSURE_DATE IS NULL OR getdate() < a.GUILD_CLOSURE_DATE); - SELECT - @LINHAS as TOTAL, A.GUILD_UID, ISNULL(A.GUILD_NAME, N'GUILD_NAME') as GUILD_NAME, COUNT(pm.GUILD_UID) AS MEMBERS, @@ -30,14 +23,9 @@ BEGIN FROM pangya.pangya_guild A INNER JOIN pangya.account B ON A.GUILD_LEADER = B.[uid] LEFT JOIN pangya.pangya_guild_member pm ON A.GUILD_UID = pm.GUILD_UID AND pm.MEMBER_STATE_FLAG < 9 - WHERE - A.GUILD_NAME LIKE N'%' + @SEARCH + N'%' - AND (A.GUILD_STATE NOT IN(4, 5) OR A.GUILD_CLOSURE_DATE IS NULL OR getdate() < A.GUILD_CLOSURE_DATE) GROUP BY A.GUILD_UID, A.GUILD_NAME, A.GUILD_MARK_IMG, A.GUILD_INFO, A.GUILD_PANG, A.GUILD_POINT, A.GUILD_LEADER, b.NICK, a.GUILD_REG_DATE ORDER BY - CASE WHEN @SORT = 0 THEN CAST(a.GUILD_REG_DATE as sql_variant) ELSE CAST(a.GUILD_REG_DATE as sql_variant) END DESC - OFFSET (@PAGE * 12) ROWS - FETCH NEXT 12 ROWS ONLY; + a.GUILD_UID END