Hi,
Please refer below SQL script
SQL
DECLARE @TransactionTable AS TABLE(IssueID INT IDENTITY(1,1),BookNo VARCHAR(50),Issuedate DATETIME,ReturnDate DATETIME,TransactionStatus VARCHAR(10))
INSERT INTO @TransactionTable VALUES('D0001','2016/02/09','2016/02/19','Issue')
INSERT INTO @TransactionTable VALUES('D0002','2016/01/31','2016/02/09','Return')
INSERT INTO @TransactionTable VALUES('D0010','2016/02/01','2016/02/09','Return')
INSERT INTO @TransactionTable VALUES('D0025','2016/02/09','2016/02/09','Issue')
INSERT INTO @TransactionTable VALUES('D0052','2016/02/09','2016/02/19','Issue')
INSERT INTO @TransactionTable VALUES('D0052','2016/02/10','2016/02/19','Issue')
DECLARE @startdate DATETIME,@enddate DATETIME
SET @startdate = '2016/02/09'
SET @enddate = '2016/02/10'
;WITH cte
AS (
SELECT @startdate DateVal
UNION ALL
SELECT DateVal + 1
FROM cte
WHERE DateVal + 1 <= @enddate
)
SELECT DISTINCT DateVal [Date],ISNULL([Issue],0) 'No. of Books Issued',ISNULL([Return],0) 'No. of BooksReturned' FROM
(
SELECT DateVal,(CASE WHEN TransactionStatus = 'Issue' THEN COUNT(Issuedate)
ELSE COUNT(ReturnDate) END) [Count],TransactionStatus
FROM cte,@TransactionTable
WHERE DateVal = (CASE WHEN TransactionStatus = 'Issue' THEN Issuedate
ELSE ReturnDate END)
GROUP BY DateVal,TransactionStatus
) as tbl
PIVOT(MAX([count]) FOR TransactionStatus IN([Issue],[Return])) pvt
Screenshot

and refer below article to bind gridview.
I hope this will help you out.