Sulayman bin Dawud, peace be upon them both, said, "Tonight I will surely go around to a hundred women, and each one will bear a boy who will fight in the cause of Allah."The angel said to him, "Say, 'If Allah wills.'"But he did not say it and forgot. He went around to all of them, and none of them bore a child except one woman, who delivered half a person.The Prophet ﷺ said, "Had he said, 'If Allah wills,' he would not have broken his oath, and it would have been more likely to fulfill his wish."
قال سليمان بن داود عليهما السلام: لأطوفن الليلة بمائة امرأة تلد كل امرأة غلاما يقاتل في سبيل الله فقال له الملك قل إن شاء الله فلم يقل ونسي فأطاف بهن ولم تلد منهن إلا امرأة نصف إنسان قال النبي ﷺ: لو قال إن شاء الله لم يحنث وكان أرجى لحاجته.
Bukhari reported it in the Book of Marriage (5242), and Muslim in the Book of Oaths and Vows (1654:24), both through the route of Abdul-Razzaq, who said, Mamar informed us, from Ibn Tawus, from his father, from Abu Hurairah, who said, then he mentioned it. This is the wording of Bukhari, and the account of Muslim is similar except that he said, "seventy women" instead of "a hundred women."All the narrators from Abdul-Razzaq agreed in reporting the first part of the hadith as stopped and raising the last part of it, from his saying ﷺ, "If he had said, if Allah wills..." to the end of the hadith. Abbas bin Abdul-Azim Anbari, one of the trustworthy and reliable memorizers, differed from them, reporting it from Abdul-Razzaq as fully raised, from beginning to end, and with the wording "ninety women." Nasai reported it from him in the Book of Vows (3856).