if you want the "3rd", as you said, then you can go for [3]
driver.findElement( By.xpath(".//div[contains(text(),'Approval Date')][3]")).click();
if for example you wanted the "last" entry then go for [last()]
driver.findElement( By.xpath(".//div[contains(text(),'Approval Date')][last()]")).click();
In your case both would give back the same result...
As to your question "How to select all elements that contain "Approval Date":
List<WebElement> elements = driver.findElements( By.xpath(".//div[contains(text(),'Approval Date')]"));