As MySQL Manual Says Query Cache works with transactions with Innodb tables but it does not tell you how and with which restrictions.