Overseas, markets in Europe were lower as investors reacted to a fall in oil prices and looked ahead to a rate decision from the European Central Bank.
Asian equities finished lower after China's inflation data painted a mixed picture.
The NSE 50-share Nifty index opened lower at 8,914.50 and hovered between 8,945.80 and 8,899.50 before closing at 8,927, a marginal rise of 2.70 points, or 0.03 per cent.
Sector-wise, PSU bank rose (0.73 per cent), followed by auto (0.55 per cent), media (0.56 per cent), bank (0.22 per cent) and finance service (0.25 per cent) while, pharma fell (0.81 per cent), metal (0.67 per cent), energy (0.51 per cent), realty 0.20 per cent and infra 0.23 per cent.
More From This Section
Major index gainers were Maruti (1.71 per cent), SBIN (1.24 per cent), Axis Bank (1.23 per cent), Ambuja Cem (1.04 per cent) and Tata Motors (0.84 per cent).
Dr Reddy's Laboratories was the biggest Nifty loser, the stock tanked almost 5 pct and hit a fresh 52-week low. The stock reacted after the US FDA made 13 observation at its formulation facilities in Duvvada, Visakhapatnam.
A total of 975 scrips declined, 670 advanced, while 81 remained unchanged. Total securities that hit their price bands were 98.
Turnover in the cash segment fell to Rs 19,550.73 crore from Rs 22,250.07 crore yesterday.
A total of 9,905.01 lakh shares changed hands in 7,421,725 trades. The market capitalisation of NSE stood at Rs 11,537,696.10 crore.