The different usage of「知っている」and「知っていた」


I am curious about the tense of ”知る” because both present and past tenses are
often used.

>   1. 来月、このビルが **壊されます** 。 **知っていました** か。(present, past)
>
>   2. 彼女がどこへ **行った** か **知っています** か。(past, present)
>
>   3. 〇〇ってどこに **ある** か **知っています** か。(present, present)
>
>

And, another observation is the tense of "知る" doesn't correlate with the tense
of the object.

My intuition/interpretation is:

  1. The dismantle of the building is in the future, but the news was released before now. Both past tense and present are fine.

  2. Not sure / No intuition

  3. The existence of an object is regarded as an "present action" and therefore present tense only.

Is there any rule to tell when we can use "知っている" only, and when "知っていた" only,
and when both are interchangeable?




知っていましたか is used to provide information the listener might not know. In
English it's "Did you know _< fact I already know>_?" 知っていますか is sometimes
used in the same situation, but it is mainly used to get information the
listener is expected to have. "Do you know _< fact I want to know>_?" or "Can
you tell me ～?"

The tense of the information itself (target of 知る) has nothing to do with the
choice between 知っていましたか and 知っていますか.

>   * 彼が明日何をするか知っていますか。  
>  Do you know what he will do tomorrow?
>   * 彼が今何をしているか知っていますか。  
>  Do you know what he is doing now?
>   * 彼が昨日何をしたか知っていますか。  
>  Do you know what he did yesterday?
>   * 彼が明日結婚すると知っていましたか。  
>  Did you know he will marry tomorrow?
>   * 彼が昨日結婚したと知っていましたか。  
>  Did you know he married yesterday?
>




知っていましたか is used to provide information the listener might not know. In
English it's "Did you know _< fact I already know>_?" 知っていますか is sometimes
used in the same situation, but it is mainly used to get information the
listener is expected to have. "Do you know _< fact I want to know>_?" or "Can
you tell me ～?"

The tense of the information itself (target of 知る) has nothing to do with the
choice between 知っていましたか and 知っていますか.

>   * 彼が明日何をするか知っていますか。  
>  Do you know what he will do tomorrow?
>   * 彼が今何をしているか知っていますか。  
>  Do you know what he is doing now?
>   * 彼が昨日何をしたか知っていますか。  
>  Do you know what he did yesterday?
>   * 彼が明日結婚すると知っていましたか。  
>  Did you know he will marry tomorrow?
>   * 彼が昨日結婚したと知っていましたか。  
>  Did you know he married yesterday?
>

