TOEIC® L&R・IELTS・TOEFL iBT® の文法ドリルと試験情報
ホーム > 文法一覧 > 文法の違い > 仮定法過去と仮定法過去完了の違い

英語の「If + 過去形, would + 動詞の原形」と「If + had + 過去分詞, would have + 過去分詞」の違い

仮定法過去は今の事実と違うこと(If + 過去形, would ~)、仮定法過去完了は過去の事実と違うこと(If + had + 過去分詞, would have + 過去分詞)を仮定します。

使い分けの表

If + 過去形, would + 動詞の原形If + had + 過去分詞, would have + 過去分詞
意味もし〜なら…だろうに(今の事実と反対)もし〜だったら…だっただろうに(過去の事実と反対)
対象とする時今・これから過去
if の節過去形had + 過去分詞
主な文would + 原形would have + 過去分詞
例If I knew, I would tell you.If I had known, I would have told you.

例文で比べる

○ = 自然 △ = 通じるが、その場面・文体には合わない × = 不自然・誤り

○
If I owned a bike, I would ride it to school.
自転車を持っていれば、学校へ乗っていくのに。
○
If I had owned a bike, I would have ridden it to school.
自転車を持っていたら、学校へ乗っていったのに。
a は今の話、b は過去の話です。b の主な文は would have + 過去分詞です。
△
If I studied harder last week, I would have passed the exam.
先週もっと勉強していれば、試験に受かっていたのに。
○
If I had studied harder last week, I would have passed the exam.
先週もっと勉強していれば、試験に受かっていたのに。
過去のことを仮定するなら if + had + 過去分詞です。過去形のままの言い方は、会話で聞くこともありますが正式ではありません。
○
If the store were open now, we would buy some milk.
今、その店が開いていれば、牛乳を買うのに。
×
If the store had been open now, we would have bought some milk.
今、その店が開いていたら、牛乳を買っていたのに。
今の事実と違うことは if + 過去形です。had been を使うと過去の話になります。

覚え方・注意点

  • 過去の仮定でも、主な文は would have + 過去分詞です(would + 原形ではありません)。
  • 否定は hadn't + 過去分詞、wouldn't have + 過去分詞 の形です。
  • 今と過去が混ざる文もあります(If I were taller, I would have joined the team.)。

確認問題

( )に入れるのに、より自然なのはどちらでしょう。

問1
If I (  ) the answer, I would tell you right now.
  1. had known
  2. knew
答えと解説

正解:2. knew

「今」答えを知らないという仮定なので、過去形の「knew」です。

問2
If she (  ) the map, she would not have gotten lost.
  1. checked
  2. had checked
答えと解説

正解:2. had checked

過去に道に迷った事実と違う仮定なので、「had checked」です。

問3
If we (  ) the tickets earlier, we would have gotten better seats.
  1. bought
  2. had bought
答えと解説

正解:2. had bought

過去の事実と違う仮定なので、「had bought」です。

それぞれの文法の詳しい説明

ほかの違いも見る

文法の違いの一覧 ≫