When connecting multiple tables in the database query, the developer can choose to use Inner Join On or where clause. Both methods are used for the same purpose: filter data according to the conditioned conditions between tables. However, there are slight differences between them.
Inner Join on ON clause is a syntax recommended in ANSI SQL, especially in complex connections involving multiple tables, it is easier to read. The structure is as follows:
The method of
SELECT ... FROM table1 INNER JOIN table2 ON table1.foreignkey = table2.primarykey WHERE ...
In MySQL, the use of Inner Join on and where clause is the same as Inner Join. Both inquiries will produce the same results. MySQL also offers Straight_join clauses, which can control the sequence of connection, which is a function that cannot be provided by WHERE grammar.
SELECT ... FROM table1, table2 WHERE table1.foreignkey = table2.primarykey AND ...
Readability:
Inner Join on is usually considered to be easier to read, especially in complex connections.
Flexible: If necessary, Inner Join On can easily replace it with Out Join.
grammar:The above is the detailed content of INNER JOIN ON vs. WHERE Clause: When Should I Use Which for Database Queries?. For more information, please follow other related articles on the PHP Chinese website!