I Help You

MySQL CLI → HTML Table

Paste MySQL CLI query output (the +----+------+ border format) and convert it to a polished HTML table. Supports all formatting options: themes, responsive, hover, alignment, caption, borders, compact. Free, and it runs entirely in your browser — nothing you enter is uploaded.

How to use the MySQL CLI → HTML Table

1. Run your query in the MySQL CLI (or MariaDB / any compatible client) and copy the result output.

2. Paste the full output — including the +----+----+ border rows — into the input field.

3. Choose a theme and configure styling options, then preview or copy the generated HTML.

4. Download the .html file or copy the table code to embed in a report, wiki, or documentation page.

What is it?

The MySQL command-line client renders query results in a distinctive ASCII box format — columns separated by pipe characters (|) and rows separated by dashes (+----+----+). This format is instantly recognisable to any database developer but is unusable in documents, emails, or web pages without conversion.

This tool parses that exact format by identifying lines that start with | as data rows and extracting the first such row as column headers. The trailing metadata line (e.g. "5 rows in set (0.01 sec)") is automatically ignored.

The same format is also produced by MariaDB, Percona, and any tool that mimics the MySQL client output (including some PostgreSQL and SQLite clients with similar formatting options).

Example

MySQL CLI Output (copied from terminal)
+----+-------------+------------+--------+
| id | name        | department | salary |
+----+-------------+------------+--------+
|  1 | Alice Chen  | Eng        | 120000 |
|  2 | Bob Smith   | Marketing  |  85000 |
+----+-------------+------------+--------+
2 rows in set (0.00 sec)
↓
Generated HTML Table (Striped theme)
<table>
  <thead>
    <tr><th>id</th><th>name</th><th>department</th><th>salary</th></tr>
  </thead>
  <tbody>
    <tr><td>1</td><td>Alice Chen</td><td>Eng</td><td>120000</td></tr>
    <tr><td>2</td><td>Bob Smith</td><td>Marketing</td><td>85000</td></tr>
  </tbody>
</table>

Border rows (+----+) and the 'rows in set' summary line are automatically stripped.

Benefits

Share structured data with anyone, in any format

CSV output opens directly in Excel and Google Sheets; XML works with legacy enterprise systems; JSON feeds every modern API — convert to whatever format your audience needs.

Bridge incompatible data formats without a custom script

Convert between JSON, CSV, XML, and YAML in one click — the most common inter-system data translation handled instantly, without writing a parser or ETL pipeline.

Inspect, compare, and debug complex JSON structures

Sort, extract, compare, and measure JSON to find unexpected keys, spot structural differences between API versions, and diagnose oversized payloads.

Migrate legacy data to modern formats

Convert XML configs, PHP print_r() dumps, or CSV exports to clean JSON — without writing a one-off migration script that will never be used again.

Frequently asked questions

Does this work with MariaDB or Percona output?

Yes. MariaDB, Percona Server, and compatible MySQL forks use the identical pipe-bordered output format. The parser handles any client that produces lines starting with |.

What if my values contain pipe characters?

Values containing a literal pipe character (|) may confuse the parser since | is used as the column delimiter. This is rare in practice but worth noting for free-text columns.

Can I paste output with the vertical format (\G)?

No. The \G vertical format is not supported — only the standard horizontal table format (the default output) is parsed. Run your query without \G to get the correct format.

Is my database data sent anywhere?

No. Parsing happens entirely in your browser. Nothing is transmitted to any server.

Is my data sent to a server?

No. All processing happens entirely in your browser using JavaScript. Your data never leaves your device.