现在完成时的时间状语前用for还是用in

问题描述:

现在完成时的时间状语前用for还是用in
看到有用for的,有用in的,我感觉只能用for啊.具体应该是怎样?
这个句子对吗?
There have been great advances in medicine in the last ten years.

There have been great advances in medicine in the last ten years.
对的
如果是There have been great advances in medicine for ten years.就用FOR