I have two tables named Users and Users_Permissions. Users table fields are UserId (int), Username (varchar(50))and Users_Permissions table fields are Id (int), UserId (int), Sub_Header_Id (int), Permission (varchar(20)).User table:CREATE TABLE [dbo].[Users]( [Id] [int] IDENTITY(1,1) NOT NULL, [UserName] [nvarchar](50) COLLATE SQL_Latin1_General_CP1_CI_AS NULL, CONSTRAINT [PK_Users] PRIMARY KEY CLUSTERED ( [Id] ASC)WITH (IGNORE_DUP_KEY = OFF) ON [PRIMARY]) ON [PRIMARY]
Users_Permission table:CREATE TABLE [dbo].[Users_Permissions]( [Id] [int] IDENTITY(1,1) NOT NULL, [UserId] [int] NULL, [Sub_Header_Id] [int] NULL, [Permission] [varchar](20) COLLATE SQL_Latin1_General_CP1_CI_AS NULL CONSTRAINT [DF_Users_Permissions_Permission] DEFAULT ('No')) ON [PRIMARY]Then I wrote this query: select u.id as Id, u.username as username, p.sub_header_id, p.permission as perm from Users u LEFT JOIN Users_Permissions p on p.sub_header_id= 18 order by u.Id
and I got the query result like Id---Username--sub_header_Id--Permission16------Admin--------17-----------Add16------Admin--------17-----------Edit16------Admin--------17-----------Delete16------Admin--------17-----------View17------shaji--------15-----------Add18------jb-----------15-----------Viewhere I need this to be like this:Id---Username---sub_header_Id---Perm1---Perm1---Perm3---Perm416------Admin------17----------------Add------Edit-----Delete----View17------shaji-------15----------------Add------NULL-----NULL-----NULL18------jb---------15-----------------NULL-----NULL-----NULL----ViewCan any body help me Shaji