By-elections were held for four parliament and 10 assembly seats in six states - Assam, Arunachal Pradesh, West Bengal, Tripura, Madhya Pradesh, Tamil Nadu - and one union territory, Puducherry. Ruling parties have done well in each state without exception.

The BJP scored impressively in Assam, Arunachal Pradesh and Madhya Pradesh, which brings the party major relief amid concern about how the ban on 500 and 1,000-rupee notes is being judged.

In Madhya Pradesh, the BJP retained the Lok Sabha and assembly seats that were decided on Tuesday. However, the BJP's winning margin for the Lok Sabha seat through was down from nearly 2.5 lakhs to 60,000 despite a 5 per cent increase in voter turnout.

In Assam, which is also governed by the BJP, the party retained the parliament seat vacated by Chief Minister Sarbananda Sonowal and gained an assembly seat.

Union Minister Ananth Kumar said the victory proves that "the people of India are with Narendra Modi" as the opposition has united in parliament to suggest the opposite, claiming that there is public outrage over the cash crunch caused by the sudden withdrawal of 86 per cent of the notes in circulation.

After the results were declared, PM Modi tweeted, "I thank people for the continued faith in BJP and in the BJP's unwavering focus on development and good governance."

In Arunachal Pradesh, Desingu Pul, the wife of former chief minister Kalikho Pul, who committed suicide in August, won his assembly seat as a BJP candidate. The BJP backs the state government after Chief Minister Pema Khandu broke away from the Congress.

In West Bengal, the Trinamool Congress of Chief Minister Mamata Banerjee has retained two Lok Sabha seats and one assembly seat, winning all three by-elections in the state. "People have revolted. This is symbolic, It is a vote against demonetisation. In a democracy, people vent their anger through votes," Ms Banerjee said.

In Tamil Nadu, Chief Minister J Jayalalithaa's AIADMK retained all three seats. Puducherry Chief Minister V Narayanasamy of the Congress has won the Nellithope Assembly seat. Mr Narayanasamy is a Lok Sabha lawmaker and needed to become a member of the state assembly within six months of being sworn in as Chief Minister in May.