The assembly by-election results for seven seats in six states declared on Friday were a mixed bag for the BJP and the opposition INDIA bloc, with the saffron party bagging three seats and one each going to Congress, JMM and TMC, while the Samajwadi Party was also poised to win one seat.