Sunan Ibn Majah, Volume 3, Book 11, Hadith 2108 (DarusSalam) ⓘ
It was narrated from 'Adi bin Hatim that : the Messenger of Allah, said: "Whoever swears an oath then sees that something else is better than it, let him do that which is better and offer expiation for what he swore about. "
حَدَّثَنَا عَلِيُّ بْنُ مُحَمَّدٍ، وَعَبْدُ اللَّهِ بْنُ عَامِرِ بْنِ زُرَارَةَ، قَالاَ حَدَّثَنَا أَبُو بَكْرِ بْنُ عَيَّاشٍ، عَنْ عَبْدِ الْعَزِيزِ بْنِ رُفَيْعٍ، عَنْ تَمِيمِ بْنِ طَرَفَةَ، عَنْ عَدِيِّ بْنِ حَاتِمٍ، قَالَ قَالَ رَسُولُ اللَّهِ ـ صلى الله عليه وسلم ـ " مَنْ حَلَفَ عَلَى يَمِينٍ فَرَأَى غَيْرَهَا خَيْرًا مِنْهَا فَلْيَأْتِ الَّذِي هُوَ خَيْرٌ وَلْيُكَفِّرْ عَنْ يَمِينِهِ " .
also referenced under: Hadith 2108 (Reference) & Book 11, Hadith 2186 (In-Book)