Sayyiduna Abu Sa'id al-Khudri (may Allah be pleased with him) reports this saying of the Prophet (peace and blessings be upon him): "Whoever swears an oath and then sees something better than it, its expiation is that he abandons it."
Imam Ahmad recorded it, and its chain is hasan (good).
Sayyiduna Abdullah bin Abbas (may Allah be pleased with them both) reports this saying of the Prophet (peace and blessings be upon him): "Whoever swears an oath and then sees something else (better than it), let him do it, for that will be its expiation, except for divorce or freeing a slave, which is a different matter."
Imam al-Tabarani recorded it in al-Mu'jam al-Kabir; its chain contains a narrator, Yahya bin Amr bin Malik al-Nukri, whom Hammad bin Zayd accused of lying, and others declared him da'if (weak). Imam al-Daraqutni (may Allah have mercy on him) said: He is suwaylih (somewhat acceptable) and may be considered (for corroboration).
Sayyiduna Abdullah bin Umar (may Allah be pleased with them both) narrated: The Prophet (peace and blessings be upon him) said: "Whoever swears an oath and then considers something else better than it, its expiation is that he abandons it."
Imam Abu Ya'la recorded it; its chain contains a narrator, Muhammad bin Abd al-Rahman bin al-Baylamani, who is da'if (weak).
Sayyiduna Anas (may Allah be pleased with him) narrated: Sayyiduna Abu Musa al-Ash'ari (may Allah be pleased with him) asked the Prophet (peace and blessings be upon him) for a mount to ride. At that time the Prophet (peace and blessings be upon him) was occupied with something else. He said: "By Allah, I will not give you a mount." When Sayyiduna Abu Musa (may Allah be pleased with him) turned to leave, he called him back and gave him a mount. He said: "O Messenger of Allah! You swore that you would not give me a mount." The Prophet (peace and blessings be upon him) said: "Now I swear that I will surely give you a mount."
Imam Ahmad and Imam al-Bazzar recorded it, and the narrators of Imam Ahmad are the narrators of the Sahih.
Hadith Takhrij«اخرجه البزار فى المسند (1344) اخرجه ابو يعلى فى المسند (3835) اخرجه احمد فى المسند (12056 و 12835 و12836 و 13471 و 13621) ، أخرجه مسند أحمد برقم: 11645، 13059، وأخرجه إتحاف الخيرة المهرة بزوائد المسانيد العشرة برقم: 4823/1»
Sayyiduna Imran bin Husayn (may Allah be pleased with him) narrated: I came to the Prophet (peace and blessings be upon him) with some people of my tribe, and I asked him for mounts to ride. He said: "By Allah, I will not give you mounts. By Allah, I do not even have any mounts to give you." He said this twice. Then three fine camels with white humps were brought to the Prophet (peace and blessings be upon him), and the Prophet (peace and blessings be upon him) sent for us and gave them to us as mounts. Then, as we set off from there, I said to my companions: "I think these animals will not be blessed for us, because the Prophet (peace and blessings be upon him) had sworn that he would not give us mounts, yet then he gave them to us." We went back to the Prophet (peace and blessings be upon him) and told him about his oath, and he said: "I have not forgotten my oath, but when I swear an oath and then consider something else better than it, I do what is better and give expiation for my oath."
Imam al-Tabarani recorded it in al-Mu'jam al-Kabir, and recorded part of it in al-Mu'jam al-Awsat; its chain contains a narrator, Sa'id bin Zarbi, who is da'if (weak).
In al-Mu'jam al-Kabir this narration is recorded with this chain: Sayyiduna Imran bin Husayn (may Allah be pleased with him) narrated: Sayyiduna Abu Musa al-Ash'ari (may Allah be pleased with him) came to the Prophet (peace and blessings be upon him) and asked him for mounts to ride. After this the narrator mentioned the full hadith; that is, he referred it back to this long hadith of his. The chain of this narration contains a narrator, Ibrahim bin Muhammad bin Irq, whom Imam al-Dhahabi declared da'if (weak).
Sayyiduna Abu al-Darda' (may Allah be pleased with him) narrated: Allah Almighty gave His Messenger some camels as fay' (spoils obtained without fighting), and he distributed them. Sayyiduna Abu Musa al-Ash'ari (may Allah be pleased with him) said: "O Messenger of Allah! Give me some too." The Prophet (peace and blessings be upon him) said: "No." He requested it of him three times, and The Prophet (peace and blessings be upon him) said: "By Allah, I will not do it." Then four fine camels remained, and The Prophet (peace and blessings be upon him) said: "O Abu Musa! Take them." He said: "O Messenger of Allah! Earlier I asked you for a gift and you refused me and swore an oath; now I fear that perhaps the Prophet (peace and blessings be upon him) has forgotten." The Prophet (peace and blessings be upon him) said: "When I swear an oath and then see something else as more virtuous, I give expiation for my oath and do what is more virtuous."
Imam al-Tabarani recorded it in al-Mu'jam al-Kabir, and its narrators are thiqat (trustworthy).
Sayyiduna Mu'awiyah bin al-Hakam al-Sulami (may Allah be pleased with him) narrated: I said: "O Messenger of Allah! I am a man who swears oaths about things and then regrets them." The Prophet (peace and blessings be upon him) said: "Whoever swears an oath and then considers something else better than it, let him do what is better and give expiation for his oath."
Imam al-Tabarani recorded it in al-Mu'jam al-Awsat; its chain contains a narrator whom I do not know.
Abd al-Rahman bin Udhaynah reports this statement of his father: The Prophet (peace and blessings be upon him) said: "Whoever swears an oath and then considers something else better than it, let him do what is better and give expiation for his oath."
Imam al-Tabarani recorded it in al-Mu'jam al-Kabir; the narrator Abdullah bin Udhaynah is thiqah (trustworthy), and the rest of its narrators are the narrators of the Sahih. (At the beginning the narrator's name is given as Abd al-Rahman bin Udhaynah; perhaps this is a scribal error, or the narrator is someone else.)
Sayyiduna Abdullah bin Amr (may Allah be pleased with him) narrated: The Prophet (peace and blessings be upon him) said: "Whoever swears an oath and then sees something better than it, let him give expiation for his oath and do what is better."
Imam al-Tabarani recorded it in al-Mu'jam al-Kabir; its chain contains a narrator, Muslim bin Khalid al-Zanji, whom Ibn Hibban and others declared thiqah (trustworthy), while Imam Ahmad and others declared him da'if (weak).
It is reported about Sayyidah Umm Salamah (may Allah be pleased with her) that she swore an oath concerning a slave of hers who had asked her to free him. Sayyidah Umm Salamah (may Allah be pleased with her) swore: "If I ever free him, may Allah Almighty not free me from Hell." Then as much time passed as Allah willed, and Sayyidah Umm Salamah (may Allah be pleased with her) said: "Subhan Allah! I heard the Prophet (peace and blessings be upon him) say: 'Whoever swears an oath and then sees something better than it, let him give expiation for his oath and do what is better.'" Then Sayyidah Umm Salamah (may Allah be pleased with her) freed the slave and gave expiation for her oath.
Imam al-Tabarani recorded it in al-Mu'jam al-Kabir, and its narrators are thiqat (trustworthy), except that Abdullah bin Hasan did not hear from Sayyidah Umm Salamah (may Allah be pleased with her).