Construct a SQL query that returns the names of all employees who have worked for the company for more than 10 years.
The SQL query below will return the names of all employees who have worked for the company for more than 10 years:

```SQL
SELECT name 
FROM employees 
WHERE (YEAR(CURDATE())-YEAR(hire_date)) > 10;
```

This query selects the `name` column from the `employees` table and filters the results using a `WHERE` clause. The `WHERE` clause uses the `YEAR()` function to calculate the difference between the current year (`CURDATE()`) and the year the employee was hired (`hire_date`). If the difference is greater than 10, then the employee has worked for the company for more than 10 years and their name will be included in the results.