What is a common table expression (CTE) in SQL? Discuss its structure, benefits, and scenarios where it is particularly useful. Include examples of how CTEs can improve query readability and organization.
Provide a clear explanation of CTEs, including their syntax, use cases, and how they differ from traditional subqueries. Discuss potential performance implications and best practices for using CTEs in complex queries.