This lesson will explain when to use which subjunctive in Spanish. First, you should be familiar with the following terms:
Governing verb - refers to the verb which causes the subjunctive to be used (for noun clauses, e.g., Quiero que vengas) or the verb which determines the time of the action (present, past, future) in the accompanying subordinate clause.
Present time - tenses include the present (indicative [hablo] and subjunctive [hable]), present perfect (indicative [he hablado] and subjunctive [haya hablado]) and future perfect [habré hablado], as well as commands [¡Habla! ¡Hable!, etc.].
Past time - tenses include all others: the imperfect (indicative [hablaba] and subjunctive [hablara]), preterit [hablé], past perfect (indicative [había hablado] and subjunctive [hubiera hablado]), conditional [hablaría], and conditional perfect [habría hablado].
Simple tenses - are the one-word forms. The simple tenses of the indicative are the present [hablo], future [hablaré], imperfect [hablaba], and preterit [hablé]; the simple tenses of the subjunctive are the present [hable] and imperfect [hablara] tenses.
Compound tenses or perfect tenses - are the forms composed of the helping verb haber plus the past participle. The compound tenses in the indicative are the presente perfect [he hablado], past perfect [había hablado], future perfect [habré hablado], and [counting for the moment the conditional as an indicative tense] the conditional perfect [habría hablado]; the compound tenses in the subjunctive are the present perfect (haya hablado) and the past perfect [hubiera hablado].