CREATE PROCEDURE [REG_GetUsers] @UserId BIGINT = NULL, @UserTypeId TINYINT = NULL AS SELECT Users.UserId, UserRoleId, ApiConsumerId, Email, UserTypeId, UserName, FirstName, LastName, CountryId, PhonePrefix, Phone, Address, City, ZipCode, BirthDate, Gender, LanguageId, IsUSTaxEntity, RegistrationDate, KYC_Approved, CreateDate, CreateOrigin, CreateIPAddress, Source, LastModifyDate, LastModifyOrigin, LastModifyOperatorId, TermsOfServiceChecked, MailVerfied, PhoneVerified, HasAvatar, [Rank], CAST((CASE WHEN EXISTS(SELECT 1 FROM Signals WHERE CreatorUserId = Users.UserId) THEN 1 ELSE 0 END) AS bit) AS UserIsKnokser, ISNULL(follow.UserFollowers, 0) CountFollowers FROM Users with(nolock) LEFT JOIN (select count(f.UserId) UserFollowers, f.FollowUserId userId from [dbo].[UserFollows] f group by f.FollowUserId) follow on follow.userId = users.UserId WHERE Users.UserId = ISNULL(@UserId, Users.UserId) AND UserTypeId = ISNULL(@UserTypeId, UserTypeId) RETURN 0