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
Prepare 1. Download the required installation pac...
Table of contents 1. Check whether the docker env...
Table of contents 1. Element offset series 2. Ele...
Recently, in order to realize the course design, ...
1. Introduction Supervisor is a general process m...
When configuring proxy_pass in nginx, if you matc...
Introduction Incremental backup means that after ...
Table of contents 1. Introduction 2. Switching 1....
//Default protocol /The use of the default protoc...
Preface There are 4 types of operators in MySQL, ...
This article shares the specific code of Vue usin...
Preface As you know, Linux supports many file sys...
MyISAM storage engine The MyISAM storage engine i...
Vue+iview menu and tab linkage I am currently dev...
Table of contents Preface start A little thought ...