Sayyiduna Abdullah bin Amr (may Allah be pleased with them) narrates: The Noble Prophet (peace and blessings be upon him) said: "Whoever takes an oath and then sees something else as better than it, he should do what is better and offer expiation for his oath."
Hadith Referenceصحیح ابن حبان / كتاب الأيمان / 4352
Hadith Gradingفضيلة الشيخ الإمام محمد ناصر الدين الألبانيحسن صحيح - «الإرواء» (7/ 168).فضيلة الشيخ العلّامة شُعيب الأرناؤوطإسناده حسن في الشواهد