1016년(현종 7) 7월에 예빈경(禮賓卿)으로서 지공거(知貢擧)가 되어 진사를 취하고, 복시(覆試)에서 김현(金顯) 등 9인과 명경(明經) 5인에게 급제를 주었다. 이듬해 5월 지중추사, 1018년 5월 한림학사승지 등을 역임하였다.
1021년 8월에 산기상시(散騎常侍)로서 지공거가 되어 진사를 취하고, 복시에서 갑과 조패(趙覇)와 병과 1인, 동진사 5인과 명경 4인에게 급제를 주었다. 또, 같은 해 9월에 중추사로서 병부시랑 유종(柳琮)과 함께 거란에 가서 책봉받은 것을 축하하고 돌아왔다. 이듬해 2월 이부상서가 된 후 서경유수, 내사시랑평장사 감수국사, 문하시랑평장사 등을 역임하였다.
1031년(덕종 즉위) 10월에 상서좌복야 겸판동경유수사(尙書左僕射兼判東京留守事)로서 재물을 횡령하고 또 가노(家奴)로 하여금 역마를 빌려 타게 하였다는 어사대(御史臺)의 탄핵을 받았다.
1035년(정종 1)에 7월 상서이부(尙書吏部)의 상소로 복직되었다가 어사대의 탄핵으로 파면당하였다. 이듬해 4월 선조(先朝)의 재상으로서 오랫동안 문한(文翰)의 책임을 맡았다 하여 왕명으로 관작이 회복되자마자 곧 치사(致仕)하였다.