I have an SQL database that stores a large amount of data, and I'm experiencing slow query performance when retrieving information. What are some strategies and best practices for optimizing database queries in SQL to achieve better performance?
Here's an example query I'm working with:
[code]SELECT first_name, last_name, email
FROM users
WHERE registration_date >= '2023-01-01'
ORDER BY last_name ASC;
[/code]
While this query works, it's becoming slow as the dataset grows. Could you provide guidance on how to optimize this query and potentially use indexes or other techniques to speed up the retrieval of data? Additionally, are there any common pitfalls I should be aware of when optimizing SQL queries? Your insights, including code examples if applicable, would be greatly appreciated. Thank you!