Menu

Learn SQL and Databases with Practical Examples

SQLiz is a practical learning library for SQL and databases. Browse query examples for MySQL, PostgreSQL, SQLite, MariaDB, and SQL Server, alongside references and setup guides for Oracle, MongoDB, Redis, and more. Format SQL for six database dialects, explore the SQL and database tools, or run SQLite queries in a temporary browser database. You can also compare SQL patterns across databases, search for a function or diagnose a common MySQL or PostgreSQL error, choose a database tutorial below, or browse all articles for installation and programming guides.

Recent articles and guides

About SQLiz.com

SQLiz is a SQL learning and reference site with database tutorials, installation guides, examples, and browser-based SQL tools.

SQL JSON Aggregation by Database: Arrays and Objects

Compare JSON array and object aggregation in MySQL, MariaDB, PostgreSQL, SQLite, SQL Server, and Oracle, including ordering, NULL, and version differences.

List Views in SQL: MySQL, MariaDB, PostgreSQL & More

Compare how to list views in MySQL, MariaDB, PostgreSQL, SQL Server, SQLite, and Oracle, including schemas, system views, and permissions.

JSON Schema Validation in MySQL and MariaDB

Compare MySQL and MariaDB JSON_SCHEMA_VALID(): minimum versions, Draft 4 versus Draft 2020, reference limits, and MySQL validation reports.

List Databases in SQL: MySQL, MariaDB, PostgreSQL & More

Compare how MySQL, MariaDB, PostgreSQL, SQL Server, SQLite, and Oracle list databases, schemas, or attached files, including visibility limits.

SQL Server JSON Path Expressions

Learn SQL Server JSON path syntax for keys, array indexes, lax and strict modes, and SQL Server 2025 array wildcards.

SQL Server ISJSON(): Test Whether a Value Is JSON

Learn how SQL Server ISJSON() validates JSON text, returns NULL for SQL NULL, and checks top-level JSON types on SQL Server 2022 and later.

SQL Server JSON_PATH_EXISTS(): Check a JSON Path

Learn how SQL Server JSON_PATH_EXISTS() tests for a path, distinguishes a JSON null from a missing key, and filters JSON rows.

SQL Server JSON_CONTAINS(): Search a JSON Path

Learn how SQL Server 2025 JSON_CONTAINS() searches JSON paths, compares typed scalar values, handles arrays, and supports LIKE matching.

SQL Server JSON_VALUE(): Extract a Scalar from JSON

Learn SQL Server JSON_VALUE() scalar extraction, lax and strict paths, the 4,000-character limit, and SQL Server 2025 RETURNING for native json input.

SQL Server JSON_QUERY(): Extract JSON Objects and Arrays

Learn SQL Server JSON_QUERY() object and array extraction, lax and strict paths, and SQL Server 2025 array wildcards with WITH ARRAY WRAPPER for native json input.

SQL Server OPENJSON(): Parse JSON into Rows

Learn how SQL Server OPENJSON() returns JSON properties and array items as rows, maps values with WITH, and keeps nested objects with AS JSON.

SQL Server JSON_MODIFY(): Update JSON Values

Learn how SQL Server JSON_MODIFY() updates or inserts properties, appends array items, deletes keys with NULL, and inserts JSON fragments safely.

SQL Server JSON_ARRAY(): Build a JSON Array

Learn how SQL Server JSON_ARRAY() builds arrays from SQL values, handles NULL elements, nests JSON constructors, and returns JSON text.

SQL Server JSON_ARRAYAGG(): Aggregate Rows into a JSON Array

Learn SQL Server JSON_ARRAYAGG() row ordering and NULL handling, plus supported SQL Server 2025, Azure SQL, and Microsoft Fabric platforms.

SQL Server JSON_OBJECT(): Build a JSON Object

Learn how SQL Server JSON_OBJECT() constructs objects from key/value pairs, controls NULL properties, and nests JSON arrays or objects.

SQL Server JSON_OBJECTAGG(): Aggregate Rows into a JSON Object

Learn SQL Server JSON_OBJECTAGG() key/value aggregation and NULL handling, plus supported SQL Server 2025, Azure SQL, and Microsoft Fabric platforms.

How to List Tables in SQL Server (T-SQL and SSMS)

List SQL Server tables in the current database with T-SQL or SSMS, include schemas, filter by schema, and troubleshoot missing results.

List Indexes in SQL: MySQL, MariaDB, PostgreSQL & More

Compare how to inspect a table’s indexes in MySQL, MariaDB, PostgreSQL, SQL Server, SQLite, and Oracle.

List Table Columns in SQL: MySQL, MariaDB, PostgreSQL & More

Compare how to inspect table columns in MySQL, MariaDB, PostgreSQL, SQL Server, SQLite, and Oracle, including data types and nullability.

List Tables in SQL: MySQL, MariaDB, PostgreSQL & More

Compare how to list tables in MySQL, MariaDB, PostgreSQL, SQL Server, SQLite, and Oracle, including schema and database scope.

SQL Date Formatting by Database: MySQL, MariaDB, PostgreSQL & More

Compare date and time formatting in MySQL, MariaDB, PostgreSQL, SQL Server, SQLite, and Oracle, including the different format tokens.

How to Size a MySQL Connection Pool

Calculate a safe MySQL pool ceiling across app replicas, then tune it with database and application metrics instead of guessing.

MySQL Error 2015: Named Pipe Connection on Windows

Troubleshoot MySQL Error 2015 on Windows by checking named-pipe support, the pipe name, and client access permissions.

How to Upgrade PostgreSQL 14 to PostgreSQL 18

PostgreSQL 14 support ends Nov 12, 2026. Plan an upgrade to 18 with pg_upgrade checks, checksum compatibility, a tested backup, and application validation.

How to Upgrade PostgreSQL 17 to PostgreSQL 18

Plan a PostgreSQL 17 to 18 major-version upgrade with pg_upgrade: check extensions and checksums, test backups, use check mode, and verify the new cluster.

MySQL Error 1114: The Table Is Full

Diagnose MySQL Error 1114 by checking disk space, the affected storage engine, InnoDB tablespaces, MEMORY limits, and query temporary tables.

PostgreSQL Error 22007: Invalid Datetime Format

Fix PostgreSQL SQLSTATE 22007 by checking DateStyle, using ISO date values, and parsing fixed input formats explicitly.

MySQL Error 1040: Too Many Connections

Recover from MySQL Error 1040 with an administrator connection, inspect sessions, and size application pools against max_connections.

MySQL Error 1206: Lock Table Full

Fix MySQL Error 1206 by shrinking oversized transactions, batching row changes, checking query indexes, and sizing the InnoDB buffer pool.