Sunan an-Nasa'i, Volume 4, Book 35, Hadith 3816 (DarusSalam)

It was narrated that 'Adiyy bin Hatim said: "The Messenger of Allah said: 'Whoever swears an oath, then sees something better than it, let him do that which is better and offer expiation for his oath.'"

أَخْبَرَنَا إِسْحَاقُ بْنُ مَنْصُورٍ، قَالَ حَدَّثَنَا عَبْدُ الرَّحْمَنِ، قَالَ حَدَّثَنَا شُعْبَةُ، عَنْ عَمْرِو بْنِ مُرَّةَ، قَالَ سَمِعْتُ عَبْدَ اللَّهِ بْنَ عَمْرٍو، مَوْلَى الْحَسَنِ بْنِ عَلِيٍّ يُحَدِّثُ عَنْ عَدِيِّ بْنِ حَاتِمٍ، قَالَ قَالَ رَسُولُ اللَّهِ صلى الله عليه وسلم ‏ "‏ مَنْ حَلَفَ عَلَى يَمِينٍ فَرَأَى غَيْرَهَا خَيْرًا مِنْهَا فَلْيَأْتِ الَّذِي هُوَ خَيْرٌ وَلْيُكَفِّرْ عَنْ يَمِينِهِ ‏" ‏ ‏.‏

sunnah.com