Introduction When writing SQL today, I encountered a problem. The requirement is to query the data and sort it in reverse order of the score and the number of visits in the past week. The problem is that the conventional way of writing is to put the day >= xxx condition in the where clause. If some data has no visits in the past week, then this data cannot be found. The solution is to put the condition in LEFT JOIN. MySQL statement execution order First of all, let me explain a concept. The order in which MySQL statements are executed is not the order of SQL statements. Here is the sample SQL SELECT DISTINCT < select_list > FROM < left_table > < join_type > JOIN < right_table > ON < join_condition > WHERE < where_condition > GROUP BY < group_by_list > HAVING < having_condition > ORDER BY < order_by_condition > LIMIT < limit_number > The following is the SQL execution order FROM <left_table> ON <join_condition> <join_type> JOIN <right_table> WHERE <where_condition> GROUP BY <group_by_list> HAVING <having_condition> SELECT DISTINCT <select_list> ORDER BY <order_by_condition> LIMIT <limit_number> The role of LEFT JOIN The difference in result sets is not only related to the SQL priority, but also to LEFT JOIN When using left join, the condition after on is only valid for the right table.
The above is excerpted from two materials, which can summarize it well (the original links are below, and there are examples in them). References:
Summarize The above is the full content of this article. I hope that the content of this article will have certain reference learning value for your study or work. If you have any questions, you can leave a message to communicate. Thank you for your support for 123WORDPRESS.COM. You may also be interested in:
|
<<: Installation and configuration tutorial of Linux virtual machine under Windows operating system
>>: Vue Element-ui table realizes tree structure table
Table of contents Why do we need partitions? Part...
This article shares the specific code of jQuery t...
I encountered this problem today. I reassigned the...
Table of contents Preface Global Lock Table lock ...
Structural (position) pseudo-class selector (CSS3...
Table of contents Background of this series Overv...
Preface This is an old demand, but there are stil...
OOM stands for "Out Of Memory", which m...
Preface Only Innodb and MyISAM storage engines ca...
Introduction MySQL should be a very common databa...
Usually the goal of building a website is to have...
1. Log in to MySQL and use SHOW VARIABLES LIKE ...
The equal height layout described in this article...
This article shares the specific code for canvas ...
This article shares the specific code of js to im...