宋太宗在位期間的重大軍事災難,除了兩次北伐,還有陳家谷楊業之歿與君子館劉廷讓之敗。敗仗通常會帶來過度的批評,當一個軍事獨裁者頻繁遭遇失敗,那麼專業或不實的指責便會多到無法釐清。
宋太宗第一次伐遼,是宋朝軍事的轉捩點之一。起先凱歌高唱,岐溝關、涿州納降,兵抵幽州,但經高梁河交戰,便大敗而歸。關於這次北伐,曾瑞龍《經略幽燕》已作了詳細的描述與評論,但我對某些觀點持保留意見。本文擬在簡述戰役經過之餘,在曾瑞龍的基礎上提出新的觀點。
一、促師奪燕
平定北漢後,宋軍還師至鎮州,太宗提出要北伐契丹。攻克太原後尚未犒賞,故而部將大抵不願北伐,但也沒有明言反對。唯一發表了觀點的殿前都虞候崔翰,恰是贊同北伐的。他說:“此一事不容再舉,乘此破竹之勢,取之甚易,時不可失也。”
宋軍方歷白馬嶺、太原兩勝,士氣正高,正是崔翰所說的“破竹之勢”。此外,由於宋軍集結於鎮州,比從開封發兵近了不少,可以達成行動的突然性。這樣的條件,一旦錯過便可能再不會出現。
作戰形勢圖
這時進行北伐,似乎有個好的藉口。按照遼史記載,在正月乙酉,曾派遣使宋朝,詢問討伐北漢之事,丙申日帶回了宋太宗強硬地宣稱:「河東朔命,所當問罪。若北朝不援,和約如舊,不然則戰。而遼國在二月收到北漢求救後,仍出兵援漢。
這一說法是待商榷的。從乙酉至丙申共計十二天,遼國使者無論如何是來不及往返的。假如不是日期記載有誤,那麼應該是又過了一個甲子,為七十二天。遼軍的第一批援軍出發於五十二天后的二月丁卯,等使者歸報宣言,已成既定事實,這樣的宣稱也就欠缺“警告”的性質了。
遼國記載中採用的曆法比宋朝曆法的干支要早一日,在本文中提到的日期以雙方各自曆法為準。
《長編》記載太宗於二月丁丑會見了契丹使者,此時他已發兵離開開封,會見地點在趙州臨城縣。如果這正是遼史中撻馬長壽參與的出使,那麼遼使在出發的第五十四天才見到了太宗,又在十八天后回報景宗,或許正是因為太宗的警告而使他急於通報。
曾瑞龍認為,太宗的宣稱並不夠明確,“不然則戰”一句可能被遼人理解成不惜在北漢局部戰爭上大動干戈。但自雄州和議以來,宋遼在河東的交手並不少,既然契丹發兵救漢,那麼與之交戰也無須多言。按遼史說法,景宗在三月丙戌加強了幽州的防禦。又據《遼史·耶律撒合傳》,撒合是三月派往幽州將領中的一員,其原因正是被描述為應對來犯的宋軍。
丙戌在丙申前,如果撻馬長壽出使共七十二天,則此時尚未得到太宗的警告。故而長壽出使日期錯誤,太宗在臨城縣接見的使者也不是他,而遼軍在三月的戍守正是景宗對太宗警告的回應。
宋軍從六月丙寅進入邊境到兵抵幽州,只用了四天時間,沿途只在涿州遭遇過小規模抵抗。快速的攻勢使得遼軍反應不及,並促成幽州周邊統治瓦解,漢民、偽軍甚至渤海人大量響應。這樣看來,突襲幽州確實是很犀利的戰略。
但曾瑞龍提出了更深層次的看法。他認為這一戰略屬於五代遺緒,只適用於對付軍心不穩、實力較弱的小國,太宗與崔翰並未意識到遼這樣的大國不會縱深突進而無迴轉之地。但我想他這裡搞錯了,他是這麼說的:
如他指出,五代常見縱深突進是因為勝利者爭取趕在失敗者重整戰力前徹底摧毀對手,但太宗的突襲並不會形成這種主戰役獲勝後「在對手未能恢復戰力時插入其政治重心」的情況,原因是淺顯的:這一路沒有遼軍主力。在兵抵幽州之前,宋軍雖在白馬嶺達成了一次勝利,但已過去較長時間;在涿州的小勝則無足輕重。而幽州也不是遼國的政治重心,兵臨城下不會造成軍心崩潰。與其說太宗小看了遼國國力,不如說正是因為看到了遼軍的強大而要在援軍到來前搶先封鎖週邊甚至拿下幽州。
二、兵臨城下
此時幽州城北駐紮著萬餘遼軍,為北院大王耶律奚底(耶律隆運傳中作五院糺詳穩)、統軍使蕭討古、乙室王耶律撒合所領,正是三月派往幽州戍防的部隊。由於力量懸殊,丁卯(即宋歷戊辰)遼軍很快就被擊退了。奚底和蕭討古承受了較重損失,而撒合則保全軍隊。遼軍撤退至城北約二十里的清河北岸。
抵達幽州的第三天,六月壬申,宋軍四面攻城。增援的耶律學古一軍趕在圍城之前進入城中,成為了守城的重要力量,正是宋軍無法迅速克城的重要因素。負責守護幽州的,本該是南京留守韓匡嗣,但實際他的兒子韓德讓權任南京留守,代替了他的職位。 ]姍姍來遲的耶律沙、耶律斜軒部,在宋軍的擠壓下,只能退出幽州週邊的平原。
兵力方面,宋軍參戰兵力並不明確,據曾鞏所說,伐北漢有十餘萬人,那麼之後不久的伐遼,也應在十萬以上。遼軍的兵力更無從證實,有一種說法聲稱休哥請求十萬救兵。如果僅指休哥與同時出發的耶律抹隻的兵力,則很可能失於誇大,但這一說法中,休哥請救幽州時正值景宗喪失堅守意誌之刻,當為派遣耶律學古、耶律沙、斜軫等部之前,故所請之救兵包括了前後多批援軍,十萬就顯得合理了。
遼軍的總兵力或許與宋軍相當,但因為倉促集結,陷入了批次投入的窘境。然而幽州要塞不易攻陷,又有學古帶兵入城,援軍不必冒險在不利的情況下出戰,從容等待後續部隊發動總攻。對宋軍而言,敵人短期之內不會對己方有威脅,便該抓緊攻城。太宗頻繁督戰,甚至試圖挖地道進城,幽州城內人心不安,岌岌可危,但在耶律學古的作用下堅持了下來。
《戰爭藝術概論》指出,在圍攻要塞時,進攻方必須控制要塞出口,以防要塞部隊對進攻方造成威脅。援軍到來時應該讓監視部隊與圍攻部隊合力攻擊,並儘遠地實施追擊。
太宗在清河一帶以一軍對峙遼援軍,封鎖其入援路線,以主力圍攻幽州,終於被集結好的援軍擊潰,似是反面教材。故而有一種觀點認為宋太宗將主力攻城過於冒險,應該優先打擊早到的援軍。當遼軍分批到達時,逐一擊破的辦法是很容易想到的,但具體到事實,便不是那麼容易了。 遼軍於清河隔河對峙,之後又退入了德勝口。德勝口位置不詳,但大底可確定為山口,即下方圖示所註出的地帶:
德勝口大致位置
當遼軍扼守山口,退入山中,便很難對其擴大打擊。負責封鎖入援道路的宋軍並未因此放棄進攻的機會,但結果是被斜軫擊敗了。
太宗的突襲雖然贏得了十餘日的時間,在遼軍完成集結前攻城,但頓兵堅城下,太原之功未賞,士氣問題日益暴露。曹翰部下掘地出蟹,於是在將領中散佈幽州“不可進拔”的讖言,反映出他戰意低迷的心理狀態;參與攻城的孟玄喆的墓誌銘則稱“眾怠莫克”,士兵的鬥志也很低沉,也無怪乎太宗多次親自督戰了。既然不能先打垮援軍,又不能拖延時間等待敵軍求戰,太宗便選擇了盡快攻擊幽州,爭取在遼軍完成集結前攻克城池。但或許是他過於心急,又或許是對周邊地理不熟悉,將曹翰的預備隊投入了攻城戰。在長編中只是提到曹翰與米信“率兵屯城之東南隅,以備非常”,但在宋史曹翰傳中則稱掘出蟹時已參與攻城,“又從征幽州,率所部攻城東南隅,卒掘土得蟹以獻”,故而曾瑞龍指出,曹翰本是預防緊急情況的預備隊,但被派去攻城,掘地出蟹則表明他可能在挖地道。
這可能是一個致命的戰術錯誤,結果是當耶律休哥繞道襲擊時,宋軍沒有一支可以前去阻擊的部隊。
耶律休哥
三、會戰敗北
宋方的史料對決戰大底故意簡略甚至隱去,所幸遼史的記載可以窺探過程一二。遼軍最初出戰的是耶律沙,宋軍除去參與攻城的,還有太宗的御營、負責封鎖德勝口的監視部隊,可能還有米信的預備隊,或者其他失於記載的部隊。
太宗與之於幽州西北的高梁河交戰,並將其擊退,但隨後遭到了斜軫與休哥對其兩翼的橫擊,此時已經是晚上。耶律沙此前白馬嶺戰敗,但高梁河之戰卻上被景宗認為是將功贖罪,那麼他被擊退必非大敗,甚至可能是預先策劃好的詐敗。曾瑞龍認為斜軫詐敗擊敗宋人監視部隊一事正是攻擊太宗御營之前,得以殺出通路趕來參戰。從斜軫橫擊太宗來看,應也達成了突然性,故這一想法有一定道理,備為一說。最值得玩味的是休哥的動向。遼曆七月癸未,休哥以三万精騎連夜從小路包抄到戰場的南面,襲擊了宋軍的側翼,成為了致勝的關鍵。他命令人持兩炬,虛張聲勢,或許也對動搖宋軍起到了較大作用。抹只“將奚兵翊休哥擊敗之”,他率領的是奚族步兵,配合了休哥的攻擊,但既然不屬於三万精騎,應該與耶律沙或斜軫在一處。
作為機動性較差的一方,無論是打算在敵人集結後撤退還是迎戰,宋軍都必須提前準備。 但休哥與耶律抹隻的這一批援軍何時到來,太宗並不清楚。也許他認為敵軍唯一的道路是和先前的耶律沙、耶律斜軫等一樣會師於德勝口,但休哥從山中繞道,突然出現在宋軍的側翼。除此之外,太宗局部兵力明顯劣勢。宋軍的主力正在攻城,太宗身邊的部隊,或許足以對付耶律沙甚至斜軫等,但顯然未能抵擋預料之外的休哥。
造成這一結局,根源在於太宗的情報缺失,對休哥的情況的一無所知,不知道他什麼時候來、在哪裡出現;疏於了解周邊可能行軍的小路,也是一個失誤。當然,即使曹翰得以前往阻擊,戰鬥的結果仍然是不可預知的,並不能斷言即可扭轉敗局。
有一個細節可以看出太宗對遼軍集結時間的誤估。太宗在抵達城下後,本擬用半個月製造攻城礟具,實際上只用了八天便完成了。 ]這說明太宗最初期待的落城時間在十五日之後,那麼他所預估的遼軍總攻時間,更在此後。但是遼歷癸未(宋歷甲申),也就是在他到幽州的第十三天,遼軍便完成集結,並將他擊敗了,大大地早於他的預料。
過去,認為宋軍在經歷太原之戰後師老兵疲的說法屢見不鮮,但他們忽視了遼軍匆忙赴援,同樣面臨疲敝的問題。 又有認為此時已值秋天,正所謂「秋高馬肥」。高梁河會戰時間為宋歷七月初七甲申,尚未涼爽,正是不利於遼軍作戰的時節。參考蒙古養馬之法,戰馬春夏飽食,須經秋天落膘後才適合作戰。 真正利於遼軍作戰的,是十月以後至來年二月間。 從結果推出反面,非黑即白,脫離軍事活動本身的辯證規律,並不可取。
高梁河之戰
太宗在此戰中負傷,只好先撤退。其乘坐驢車而不騎馬,則可能是大腿傷勢造成。遼方對高梁河之戰的斬首宣稱為萬餘級,天亮後對尚未撤退的圍城宋軍進行攻擊,聲稱「所殺甚眾」。但此役中休哥身負三箭,可見交戰激烈,其勝利也不容易,遼軍可能也有不小的損失。曾瑞龍也指出,在同年冬天的滿城會戰,正面戰場就有八萬宋軍,可見宋軍兵員損失不應太大。
但也如他所說,這一戰產生了一個深遠影響,即皇帝親征這一指揮模式的退出。在後來瓦橋關之戰,太宗也曾親征赴援,未至前線遼軍便退去了;但等到更重要的雍熙北伐,他便安居開封了。或許是早年的箭傷使他不便鞍馬,又或許是經歷高梁河之戰,使他開始對自己的軍事身份進行轉變。
宋太宗
四、其他一些問題
按《遼史·耶律虎古傳》的記載,在前一年虎古出使宋朝時即看出宋朝有滅漢之意,但景宗與韓匡嗣並沒有採信。宋太宗是在次年二月才正式發兵,遼國君臣是否能有這樣的敏銳,在正月就遣使問伐漢之事?
在太平興國三年的遼使記載有兩次,第一次為十月初賀壽,第二次為十一月賀來年新年。這兩次使者名字均無耶律虎古,因而無從確定虎古參與的是哪一次,而這一年冬天因預備北伐而取消了貢舉。於是存在一種可能,虎古參與了乾明節賀壽,而第二次使者察知了即將伐漢的確切情報,遼景宗便收到了更進一步消息。
在一些文章中,如《中朝關係史(明清時期)》、《從聯麗制遼到聯金制遼》(梁利),認為宋朝在此戰役中聯合了高麗。第一次北伐是太宗在鎮州提出,隨後進行的突襲,斷不可能要求遠在天邊的高麗給予支援。 《中朝關係史》一書將第二次北伐時的情況張冠李戴,而《從聯麗制遼到聯金制遼》一文則是誤讀了宋史太宗本紀“四年春正月丁亥,命太子中允張洎、著作佐郎句中正使高麗,告以北伐”,此處北伐指的是伐漢而非伐遼。
幽州城可能並非正對四方。在長編記載中,崔彥進負責攻城北面,但在宋史崔彥進傳中,則說他攻城西北。無獨有偶,在圍攻太原時,長編與崔彥進傳稱曹翰攻城西,但曹翰傳稱攻城西北。太原城可能是將正對四方的圖形順時針轉動一些角度,而幽州城逆時針轉動,所以方位的說法模棱兩可。
關於遼使撻馬長壽是否能十二日往返,有人提出疑問。長程速度主要是交通工具接替條件決定的。宋朝當時最快的傳遞速度為急腳遞,一日四百里,這是建立在遞卒接力、日夜兼程的條件下跑出來的。如果使用馬遞,則一日通常只有三百里,這是因為馬匹的接力距離更長。長壽歸去時可能急於通報,來路則不應以最快速度,甚至應該一直使用使團自己的馬匹,所以速度更不及一日三百里。週世宗北伐時,遼使曾以一日七百里的速度通知北漢出兵。但主要路程在遼國境內,馬匹數量充足,更換方便,可以讓馬高速賓士。且事出軍情,或許也要日夜兼程了。開封到幽州,以現在的通路條件,來去已有兩千六百里,即使遼境內可以更快,到草原遼帝身邊又須翻越燕山,還得算上使團等待與接見的時間,十二日實在來不及。