Hi AbhinavSultania,
Please reference the below code. The @Tab stands for the JOIN results of your tables.
DECLARE @Tab TABLE(Date DATE,Day VARCHAR(10),Time TIME,Company VARCHAR(99),Contact VARCHAR(99),AgentName VARCHAR(99))
INSERT INTO @Tab VALUES('2014-08-26','Tuesday','18:00:00','Company1','ContactName1','Agent1')
INSERT INTO @Tab VALUES('2014-08-27','Wednesday','10:00:00','Company2','ContactName2','Agent2')
INSERT INTO @Tab VALUES('2015-02-02','Monday','12:00:00','Company3','ContactName3','Agent3')
INSERT INTO @Tab VALUES('2015-02-02','Monday','12:00:00','company3','ContactName4','Agent3')
INSERT INTO @Tab VALUES('2014-08-28','Thursday','10:00:00','company5','ContactName5','Agent5')
INSERT INTO @Tab VALUES('2015-02-03','Tuesday','13:00:00','company6','ContactName6','Agent6')
INSERT INTO @Tab VALUES('2015-02-03','Tuesday','13:00:00','company6','ContactName7','Agent6')
INSERT INTO @Tab VALUES('2015-02-03','Tuesday','13:00:00','company7','ContactName8','Agent6')
;WITH Cte AS
(
SELECT Date,Day,Time,Company,Contact,AgentName,
ROW_NUMBER() OVER(PARTITION BY Date ORDER BY Company,Date) RN,
ROW_NUMBER() OVER(PARTITION BY Date,Company ORDER BY Company) RN2,
ROW_NUMBER() OVER(ORDER BY Company,Date,Contact) AS OrderBy FROM @Tab
)
SELECT CASE WHEN RN>1 THEN '' ELSE CONVERT(VARCHAR(25),Date,1) END AS Date,
CASE WHEN RN>1 THEN '' ELSE Day END AS Day,
CASE WHEN RN>1 THEN '' ELSE CONVERT(VARCHAR(25),Time,0) END AS Time,
CASE WHEN RN2>1 THEN '' ELSE Company END AS Time,
Contact,
CASE WHEN RN>1 THEN '' ELSE AgentName END AS Time
From CTE
ORDER BY OrderBy
If you have any question, feel free to let me know.