บทเรียนไวยากรณ์ทั้งหมด

บทที่ 50 · ด่านที่ 4: Tense และ modal verbs

Past perfect continuous

ปานกลาง

รูปแบบและการใช้

had been + -ing — กิจกรรมที่ทำต่อเนื่องมาระยะหนึ่งจนถึงจุดหนึ่งในอดีต

1.รูปประโยค

Past Perfect Continuous = had been + กริยาเติม -ing โดย had ใช้เหมือนกันกับทุกประธาน จึงไม่ต้องเปลี่ยนอะไรสำหรับ he / she / it

โครงสร้างตัวอย่าง
บอกเล่าS + had been + V-ingShe had been working. / I'd been waiting.
ปฏิเสธS + hadn't been + V-ingThey hadn't been sleeping well.
คำถามHad + S + been + V-ing?Had you been waiting long?
ถามว่านานแค่ไหนHow long had + S + been + V-ing?How long had he been living there?
คำตอบแบบสั้นYes, S had. / No, S hadn't.Yes, I had. / No, she hadn't.

เวลาพูด had มักย่อเป็น 'd: I'd been, she'd been, they'd been ถ้า 'd อยู่หน้า been ทันที จะเป็น had เสมอ ออกเสียง /d/ ให้ชัด — ถ้าไม่ออกเสียง I'd been จะฟังเหมือน I been และผู้ฟังจะไม่รู้ว่าเป็นอดีต

2.ใช้เมื่อไร

1. กิจกรรมที่ดำเนินอยู่ช่วงหนึ่งจนถึงช่วงเวลาหนึ่งในอดีต — มักใช้กับ for, since, all day, how long

  • By the time the doctor came, we'd been waiting for two hours.

    กว่าหมอจะมา เราก็รอมาสองชั่วโมงแล้ว

  • Minh had been working at the bank since 2018 when he decided to quit.

    มินห์ทำงานที่ธนาคารมาตั้งแต่ปี 2018 ตอนที่เขาตัดสินใจลาออก

  • How long had you been learning English before you moved to Canada?

    ก่อนย้ายไปแคนาดา คุณเรียนภาษาอังกฤษมานานแค่ไหน

2. อธิบายสถานการณ์ในอดีต — กิจกรรมที่ทำอยู่ก่อนหน้านั้น (อาจเพิ่งหยุด) ทิ้งร่องรอยหรือผลไว้

  • Her eyes were red. She'd been crying.

    ตาเธอแดง เธอร้องไห้มา

  • The road was wet because it had been raining all night.

    ถนนเปียกเพราะฝนตกมาทั้งคืน

  • I was exhausted when I got home — I'd been standing all day.

    ฉันเหนื่อยมากตอนกลับถึงบ้าน — ยืนมาทั้งวัน

3. กิจกรรมที่ยังดำเนินอยู่ตอนที่อีกเรื่องหนึ่งเกิดขึ้น (เรื่องนั้นมักทำให้กิจกรรมหยุดลง)

  • Lan had been driving for six hours when she finally stopped for coffee.

    ลานขับรถมาหกชั่วโมง กว่าจะได้แวะพักกินกาแฟ

  • They hadn't been dating long when they got engaged.

    พวกเขาคบกันได้ไม่นานก็หมั้นกัน

Tense นี้ต้องมีช่วงเวลาหนึ่งในอดีตเสมอ (when I arrived, by the time…, สถานการณ์ในตอนนั้น) เป็นจุดที่มองย้อนกลับไป ผู้เรียนหลายคนเผลอใช้ have been -ing ในเรื่องเล่าอดีต ถ้าจุดอ้างอิงคือตอนนี้ → have been -ing ถ้าเป็นช่วงเวลาหนึ่งในอดีต → had been -ing

3.เทียบกับ Tense ที่คล้ายกัน

Have been -ing หรือ had been -ing ทั้งคู่หมายถึง “ทำอะไรบางอย่างมาช่วงหนึ่ง” ต่างกันแค่จุดสิ้นสุด: ตอนนี้ หรือช่วงเวลาหนึ่งในอดีต

  • I've been waiting for twenty minutes. Where are you?

    ฉันรอมายี่สิบนาทีแล้ว คุณอยู่ไหน (จนถึงตอนนี้)

  • I'd been waiting for twenty minutes when she finally replied.

    ฉันรอมายี่สิบนาที กว่าเธอจะตอบกลับมา (จนถึงตอนที่เธอตอบ)

Was -ing หรือ had been -ing Was -ing = กำลังทำอยู่ในขณะนั้น had been -ing = กิจกรรมดำเนินอยู่ก่อนช่วงเวลานั้น (อาจหยุดไปแล้ว)

  • When I got home, Mum was cooking.

    ตอนที่ฉันกลับถึงบ้าน แม่กำลังทำอาหารอยู่ (ยังทำอยู่)

  • When I got home, the kitchen smelled of garlic. Mum had been cooking.

    ตอนที่ฉันกลับถึงบ้าน ในครัวมีกลิ่นกระเทียม แม่ทำอาหารมา (แม่ทำก่อนฉันมาถึง)

Had been -ing หรือ had + V3 Had been -ing พูดถึงกิจกรรมและนานแค่ไหน ส่วน had + V3 (Past Perfect) พูดถึงผลที่เสร็จแล้วและเท่าไร / กี่…

had been + -inghad + V3
เน้นที่กิจกรรม ทำนานแค่ไหนผล สิ่งที่ทำเสร็จแล้ว
คำถามHow long…?How many / How much…?
ตัวอย่างShe'd been writing emails all morning.She'd written twenty emails by noon.
เสร็จหรือยังไม่จำเป็นเสร็จแล้ว

Stative verb (know, believe, own, have = เป็นเจ้าของ…) ปกติไม่ใช้รูป continuous จึงใช้ had + V3 แม้จะพูดถึงช่วงเวลาก็ตาม

  • We had known each other for ten years when we started the company.

    เรารู้จักกันมาสิบปีแล้วตอนที่ตั้งบริษัท (ไม่ใช่: had been knowing)

4.ข้อผิดพลาดที่พบบ่อย

  • He had been work there for ten years.

    He had been working there for ten years.

    หลัง had been ต้องตามด้วย -ing

  • I was tired because I have been driving all day.

    I was tired because I had been driving all day.

    เรื่องเล่าอยู่ในอดีต (was) → ใช้ had ไม่ใช่ have

  • By noon she had been reading three chapters.

    By noon she had read three chapters.

    จำนวนที่ทำเสร็จแล้ว → had + V3

  • I had been knowing him for years.

    I had known him for years.

    know เป็น stative verb → ไม่ใช้รูป continuous

  • How long you had been living there?

    How long had you been living there?

    ในคำถาม had วางหน้าประธาน

  • She had being waiting for an hour.

    She had been waiting for an hour.

    had + been (V3 ของ be) ไม่ใช่ being

ตัวอย่าง

  • Tuan's eyes were red because he had been crying for hours.
  • By the time the bus came, we had been waiting for forty minutes.
  • How long had you been looking before you found a job?
  • Nam had been repairing his motorbike all morning, but it still didn't start.
AI กำลังฟังอยู่...•4.7/5 บน App Store และ Google Play

พูดภาษาอังกฤษ กับ AI 24/7

ดาวน์โหลดแอปทันที — ให้คะแนนการออกเสียงทันที สนทนาเป็นธรรมชาติ แก้ไขเหมือนครูจริง

AI ให้คะแนนการออกเสียงผลตอบรับทันทีสนทนาเป็นธรรมชาติ