回到晉國后,荀林父請求晉景公處死自己。晉景公想答應,有人勸道,“現在楚國已經勝利了,如果再殺了荀林父,不是使楚國的勝利成果更大嗎?荀林父忠心耿耿地侍奉國君,怎么殺他呢?”所以就沒有殺荀林父。但后來追究責任,把先縠和他的族人全都殺了。先氏在晉國就完了。
楚莊王然后打宋國。宋國派人向晉國求救。晉景公想答應,有個人叫伯宗說:“不行,古人說:‘雖鞭之長,不及馬腹’(這就是鞭長莫及的來歷)。現在楚國得到上天保佑,晉國雖然強大,不能違背上天啊!”晉景公一聽就不出兵了,派使者解揚到宋國,告訴宋國不要投降楚國,晉國的軍隊已經出發了。解揚走到半路上被鄭國人抓了,送給楚莊王。楚莊王就讓解揚對宋國人說晉國的軍隊不會來。解揚不肯,再三勸說,他答應。但向宋國人喊的是晉國已經派軍隊出發了,讓他們不要投降。
楚莊王大怒,“你明明答應我了,怎么不守信用呢!”解揚說:“國君的命令是道義,臣下接受命令就是信用,我接受了國君的命令就要完成它,我之所以答應您,是為了借機完成國君的使命。就算我死了,我們國君有守信的臣子,我死得其所,有什么遺憾呢?”楚莊王聽他這樣說就放了他。
宋國打得很艱苦,打了幾個月沒打下來。楚莊王想撤兵,申犀跪在他的馬前說不能撤,并提出長期圍城的辦法。宋國害怕了,派人到楚國軍營中談判,對子反說:“我們現在易子而食,析骨而炊,雖然這樣我們也不會和你們簽訂城下之盟,寧可把宋國毀滅。如果你們能退兵三十里,那么宋國唯命是從。”
楚國于是退兵三十里,宋國和楚國講和,盟誓說:“我無爾詐,爾無我虞。”(這就是“爾虞我詐”的來歷。)
之后不久(公元前591年)楚莊王就去世了,楚莊王的霸業非常可惜,他一死,霸業就衰落了。關于楚莊王再講個很有名的故事,有一天晚上,楚莊王宴請群臣,他命自己的愛妾給大臣們斟酒,大家都喝得很高興。突然一陣風來,把蠟燭都吹滅了。這時一個人大概喝高了,趁黑去拉楚莊王的愛妾。愛妾掙脫,袖子都被扯斷了。她就告訴楚莊王,“我把這個人帽子上的帽纓摘掉了,一定要嚴懲這個人。”楚莊王卻下令所有人都把帽子上的帽纓摘了,然后才點蠟燭。后來楚國又和別國作戰,楚莊王發現一個人打仗非常拼命,就把他叫來問為什么,這個人說:“我就是那個宴會上被摘掉帽纓的人。”