Data Manipulation Language

The Data Manipulation Language (DML) covers the SQL statements used to insert, change, remove, and retrieve rows in a table. The SELECT statement is sometimes regarded as belonging to a separate language called Data Query Language (DQL), but it is covered here alongside the rest of DML.

Data Manipulation

Data Manipulation covers INSERT, REPLACE, UPDATE, DELETE, and SQL Modes, which control how strictly the server validates data during these operations.


Data Retrieval

Data Retrieval covers the SELECT statement in full, row constructors with VALUES ROW(), set operators (UNION, INTERSECT, EXCEPT), JOIN syntax, CASE and IF(), and the low-level HANDLER interface.


Subquery

Subquery covers scalar, column, table, and lateral derived-table subqueries.


CTE

CTE covers Common Table Expressions, including the WITH...SELECT syntax, parenthesized column lists, recursive CTEs, and more complex variations.


Query Optimizer

Query Optimizer covers the system variables, optimizer hints, index hints, and statistics that influence how MySQL executes a query.


Injection Attacks

Injection Attacks covers common SQL injection techniques, input validation, and how to defend against injection using prepared statements in MySQL, PHP, and PDO.


Operators & Functions

Section 3.7 catalogs MySQL's operators and built-in functions across fifteen pages: Operators, Regular Expression, Aggregate, Window Functions, Type Conversion, Comparison, NULL Handling, Numeric, String, JSON, Date and Time, Spatial Analysis, Encryption and Compression, Database Information, and Miscellaneous.