What is PromQL, and why didn't Prometheus just use SQL?
PromQL is Prometheus's own query language. Its syntax resembles SQL, but it is built for time series, because several of the query types Prometheus needs can't be expressed sensibly in SQL.
SQL is designed around tables and rows. Prometheus data is series of timestamped values identified by a metric name and labels. Typical questions are things like "the per-second rate of this counter over the last minute, averaged per host", which mix selecting by labels, working over time windows and aggregating. Forcing that into SQL would be clumsy or impossible, so the developers chose a hybrid that stays close to SQL where it can.
Queries are sent over a RESTful HTTP API, not a database protocol. Every Prometheus instance therefore runs a built-in web server (port 9090), with a simple query page in the browser. Grafana and other clients use the same API.
Example:
rate(node_network_receive_bytes_total{device="eth0"}[5m])
Go deeper:
Prometheus — Querying basics — instant vs range vectors, selectors and the HTTP API.
PromLabs — PromQL cheat sheet — the common query patterns on one page.