과거완료진행형(Past Perfect Continuous)이란? 형태와 의미 완벽 정리
과거완료진행형(Past Perfect Continuous, 과거완료진행 시제)은 "과거의 특정 시점보다 더 이전부터 시작된 동작이, 그 과거 시점까지(혹은 그 시점 직전까지) 계속 진행되고 있었음"을 강조하는 시제이다. 즉, "과거보다 더 과거(대과거)"에서 시작된 일이 특정 과거 시점까지 쭉 이어졌다는 지속성·계속성을 나타낼 때 사용한다.
핵심 한 줄 정의: 과거완료진행형은 "기준이 되는 과거 시점" 이전부터 시작해 그 시점까지 계속된 동작의 지속 기간과 진행성을 동시에 보여주는 시제이다.
기본 공식
| 구분 | 공식 |
|---|---|
| 긍정문 | 주어 + had + been + 동사ing |
| 부정문 | 주어 + had not(hadn't) + been + 동사ing |
| 의문문 | Had + 주어 + been + 동사ing ~? |
| 부정의문문 | Hadn't + 주어 + been + 동사ing ~? |
예문:
- She had been studying for three hours before she took a break. (그녀는 쉬기 전까지 세 시간 동안 공부하고 있었다.)
- They hadn't been talking for long when the teacher arrived. (선생님이 오셨을 때 그들은 이야기한 지 얼마 되지 않았었다.)
- Had you been waiting long when the bus finally came? (버스가 마침내 왔을 때 너는 오래 기다리고 있었니?)
과거완료진행형은 언제 쓸까? 핵심 용법 4가지
1. 과거의 한 시점까지 계속된 동작의 지속 (지속 강조)
과거의 어떤 기준 시점 직전까지 "계속 ~하고 있었다"는 지속성을 강조한다. 이때 흔히 for(~동안), since(~이래로) 와 함께 쓰여 지속 기간이나 시작 시점을 명시한다.
- I had been living in Busan for five years before I moved to Seoul. (서울로 이사하기 전까지 나는 부산에서 5년 동안 살고 있었다.)
- He had been working at that company since 2015 when it went bankrupt. (그 회사가 파산했을 때, 그는 2015년부터 그곳에서 일하고 있었다.)
2. 과거 시점의 결과·원인 설명 (진행의 결과가 눈에 보이는 상태)
과거의 특정 순간에 어떤 상태(피곤함, 젖음, 지침 등)가 나타난 원인이 그 이전부터 계속된 동작 때문임을 설명할 때 쓴다.
- Her clothes were wet because she had been running in the rain. (그녀의 옷이 젖어 있었던 것은 빗속을 계속 달리고 있었기 때문이다.)
- He was exhausted because he had been working all night. (그는 밤새 일하고 있었기 때문에 지쳐 있었다.)
3. 과거완료(Past Perfect)와 대조되는 "진행 중이었지만 완료 여부는 불분명"
과거완료(had + p.p.)는 동작의 완료·완결에 초점을 두지만, 과거완료진행형은 그 동작이 계속 진행 중이었다는 점, 혹은 완료되지 않았을 수도 있다는 뉘앙스를 전달한다.
- I had written the report before the meeting started. (나는 회의가 시작되기 전에 보고서를 다 썼다. → 완료됨)
- I had been writing the report before the meeting started. (나는 회의가 시작되기 전까지 보고서를 쓰고 있었다. → 완료 여부 불명, 쓰는 행위 자체를 강조)
4. 막 끝난 반복적/일시적 동작이 과거 시점 결과에 영향을 줄 때
- They had been arguing for an hour before they finally calmed down. (그들은 마침내 진정하기 전까지 한 시간 동안 다투고 있었다.)
과거완료진행형 vs 다른 시제 차이점 한눈에 비교
과거완료진행형 vs 과거완료(단순)
| 구분 | Past Perfect Continuous | Past Perfect (단순) |
|---|---|---|
| 형태 | had + been + V-ing | had + p.p. |
| 초점 | 동작의 지속·진행 과정 | 동작의 완료·결과 |
| 예문 | I had been reading the book. (계속 읽고 있었다) | I had read the book. (다 읽었다) |
| 완료 여부 | 완료됐는지 불명확, 과정 강조 | 완료됨이 명확 |
과거완료진행형 vs 현재완료진행형
| 구분 | Past Perfect Continuous | Present Perfect Continuous |
|---|---|---|
| 공식 | had been + V-ing | have/has been + V-ing |
| 기준 시점 | 과거의 특정 시점 | 현재 |
| 예문 | She had been crying before I arrived. | She has been crying since this morning. |
Tip: 현재완료진행형에서 "기준점"을 현재에서 과거의 한 시점으로 통째로 옮긴 것이 과거완료진행형이라고 생각하면 이해가 쉽다. "시간을 과거로 한 칸 더 이동시킨 현재완료진행형"이라는 이미지를 가지면 헷갈리지 않는다.
과거진행형 vs 과거완료진행형
| 구분 | Past Continuous | Past Perfect Continuous |
|---|---|---|
| 공식 | was/were + V-ing | had been + V-ing |
| 의미 | 과거 특정 시점에 막 진행 중이던 동작 (시작 시점 불명확) | 과거 시점 이전부터 시작해 그 시점까지 계속된 동작 |
| 예문 | I was cooking when he called. (전화했을 때 요리하는 중이었다) | I had been cooking for an hour when he called. (전화했을 때 이미 한 시간째 요리하고 있었다) |
과거완료진행형과 자주 함께 쓰이는 시간 표현
| 표현 | 의미 | 예문 |
|---|---|---|
| for + 기간 | ~동안 | She had been waiting for two hours. |
| since + 시점 | ~이래로 | He had been living there since 2010. |
| before | ~전에 | They had been dating for a year before they got married. |
| when | ~했을 때 (기준 시점 도입) | I had been sleeping when the alarm went off. |
| until/till | ~할 때까지 | We had been walking until it started to rain. |
| how long ~? | 얼마나 오래 ~? | How long had you been waiting? |
진행형 불가 동사(상태동사) 주의사항
과거완료진행형도 진행형(be + V-ing) 을 기본으로 하므로, 원칙적으로 진행형으로 쓰지 않는 상태동사(state verbs) 는 과거완료진행형으로도 쓸 수 없다.
- 소유: have(소유의 의미), belong, own, possess
- 감정: love, like, hate, want, prefer
- 인지: know, believe, understand, remember, forget
- 감각/지각: see, hear, smell, taste (지각동사)
- 존재: be, exist
❌ I had been knowing him for ten years.
⭕ I had known him for ten years. (과거완료 단순형 사용)
❌ She had been believing the rumor for weeks.
⭕ She had believed the rumor for weeks.
Tip: 상태동사가 나오면 무조건 과거완료(had + p.p.)로 바꿔 쓴다고 기억해 두면 실수를 크게 줄일 수 있다.
한국인 학습자가 자주 틀리는 부분
1. "계속"을 뜻하는 한국어 표현을 무조건 진행형으로 옮기는 실수
한국어의 "~하고 있었다", "~해 왔었다"라는 표현을 볼 때, 한국인 학습자는 무조건 진행형(-ing)을 붙이려는 경향이 있다. 하지만 동작동사인지 상태동사인지를 먼저 구분해야 한다.
❌ I had been wanting to see you for a long time. (want는 보통 진행형 X)
⭕ I had wanted to see you for a long time.
단, want, love 등도 최근에는 강조나 구어체에서 진행형으로 쓰이는 경우가 늘고 있지만(예: I've been wanting to talk to you), 문법 시험이나 격식체 글쓰기에서는 단순형을 우선하는 것이 안전하다.
2. 시제 일치(대과거) 개념 부족으로 인한 혼동
한국어는 영어처럼 "과거 안에서도 더 이전 시점"을 별도의 동사 형태(had been)로 명시적으로 구분하지 않는다. 한국어 문장 "그는 도착했을 때, 나는 세 시간째 기다리고 있었다"에서 "기다리고 있었다"만 보고 단순 과거진행형(was waiting)으로 착각하는 경우가 많다. 그러나 "기준 시점(도착) 이전부터 계속되었다"는 지속 기간이 드러나 있으므로 과거완료진행형이 정답이다.
❌ When he arrived, I was waiting for three hours.
⭕ When he arrived, I had been waiting for three hours.
Tip: 문장에 for + 기간 이 있고, 그 지속이 과거의 또 다른 사건보다 먼저 시작되었다면 십중팔구 과거완료진행형이다.
3. had been + 동사원형으로 쓰는 오류 (동사 형태 오류)
한국어 어순과 조사 체계에 익숙한 학습자는 "have/has/had + been" 뒤에 오는 동사를 p.p.로 착각하거나 원형으로 쓰는 실수를 한다. 과거완료진행형은 반드시 been + 동사ing이다.
❌ She had been study English for two years.
⭕ She had been studying English for two years.
❌ She had been studied English for two years. (수동태 아님 주의)
⭕ She had been studying English for two years.
4. since와 for 뒤에 오는 표현 혼동
한국어의 "~동안"과 "~부터"를 혼용해서 쓰는 경우가 많다. for는 기간(숫자로 셀 수 있는 시간의 길이)에, since는 시작 시점(특정 시각·날짜·사건)에 사용한다.
❌ He had been sleeping since two hours.
⭕ He had been sleeping for two hours.
❌ He had been sleeping for 10 p.m.
⭕ He had been sleeping since 10 p.m.
5. 관사·단복수 오류가 지속 기간 표현에서 함께 발생
지속 기간을 나타내는 명사(hour, year, week 등)에서 관사나 복수형을 빠뜨리는 실수가 잦다. 한국어는 명사의 수를 표시하지 않기 때문이다.
❌ I had been waiting for three hour.
⭕ I had been waiting for three hours.
❌ She had been living there for a years.
⭕ She had been living there for years. / for a year.
6. 어순 오류: had + been + not
부정문을 만들 때 not의 위치를 헷갈려 하는 경우가 있다. not은 had 바로 뒤(had not = hadn't)에 온다.
❌ She had been not studying before the exam.
⭕ She had not been studying before the exam.
예문으로 완전 정리: 실전 예문 모음
| 상황 | 예문 | 해석 |
|---|---|---|
| 지속 강조 | We had been driving for six hours when we finally stopped for gas. | 우리는 마침내 주유를 위해 멈추기 전까지 6시간 동안 운전하고 있었다. |
| 원인 설명 | My eyes were red because I had been crying. | 내가 계속 울고 있었기 때문에 눈이 빨갰다. |
| 의문문 | How long had they been living there before the war started? | 전쟁이 시작되기 전까지 그들은 그곳에 얼마나 오래 살고 있었나요? |
| 부정문 | He hadn't been feeling well, so he stayed home. | 그는 몸이 좋지 않았기 때문에 집에 있었다. (feel well은 상태 표현이나 진행형 관용적으로 자주 쓰임) |
| 대조(단순 과거완료) | By the time I arrived, she had already left. | 내가 도착했을 때, 그녀는 이미 떠났었다. (완료, 진행 아님) |
| 대조(과거완료진행) | By the time I arrived, she had been waiting for an hour. | 내가 도착했을 때, 그녀는 한 시간째 기다리고 있었다. (지속 강조) |
문형 변환 연습: 평서문 → 부정문 → 의문문
평서문: They had been playing soccer for two hours.
부정문: They had not (hadn't) been playing soccer for two hours.
의문문: Had they been playing soccer for two hours?
Wh-의문문: How long had they been playing soccer?
학습 팁
-
"기준 시점 + 그 이전부터 계속"이라는 두 요소가 동시에 보이면 과거완료진행형이라고 판단한다. 문장에 when, before, by the time 등으로 만든 "과거의 기준절"과, for/since로 만든 "지속 기간" 표현이 함께 나오는지 확인하는 습관을 들이자.
-
과거완료(had p.p.) vs 과거완료진행(had been -ing)을 구분하는 질문법: "그 동작이 끝났는가, 아니면 계속되고 있었는가?"를 스스로에게 물어본다. 결과·완료에 초점이면 과거완료, 과정·지속에 초점이면 과거완료진행형이다.
-
상태동사 리스트를 따로 암기해두면 "had been + 동사ing"의 오남용을 줄일 수 있다. know, believe, love, want, own, belong 등은 원칙적으로 진행형 배제 동사이다.
-
타임라인을 그려보는 연습을 추천한다. 종이에 과거의 두 시점(더 이전 시점 → 기준 시점)을 화살표로 표시하고, 화살표 전체 구간이 "계속되는 동작"이면 과거완료진행형, 화살표 끝에서 "동작이 완료됨"을 표시하면 과거완료 단순형임을 시각적으로 익히면 헷갈리지 않는다.
-
뉴스 기사나 소설의 배경 설명 문단에서 과거완료진행형이 자주 등장한다. "그가 도착하기 전, 무슨 일이 어떻게 진행되고 있었는지"를 서술하는 문단을 찾아 읽으면서 실제 쓰임을 눈에 익히는 것이 효과적이다.
요약: 과거완료진행형 핵심 정리
- 형태: 주어 + had + been + 동사ing
- 의미: 과거의 한 시점보다 더 이전부터 시작되어, 그 시점까지 계속된 동작의 지속·진행을 강조
- 핵심 신호어: for, since, before, when, by the time, how long
- 비교 포인트: 과거완료(완료·결과) vs 과거완료진행(지속·과정)
- 주의점: 상태동사는 진행형 불가 → 과거완료 단순형으로 대체
- 한국인 최다 실수: 상태동사 진행형 오용, for/since 혼동, 동사 형태(been + V-ing) 오류, not의 위치 오류, 지속 기간 명사의 단복수·관사 누락
과거완료진행형은 단순히 "옛날 일"을 말하는 것이 아니라, "과거 속에서도 시간의 흐름과 지속성을 입체적으로 보여주는 도구"이다. 기준 시점을 명확히 잡고, 그 이전부터 이어진 동작의 길이를 for/since로 표시하는 연습을 꾸준히 하면 실전 작문과 회화에서 자연스럽게 활용할 수 있다.