SQL Dojo Beta
Falle

Ganzzahldivision

7 / 93 ergibt 0, wenn beide Seiten ganze Zahlen sind.

Schreiben Sie 100.0 * a / b oder CAST(a AS NUMERIC) / b. Postgres, Redshift, SQL Server und SQLite teilen ganze Zahlen ganzzahlig (7 / 2 ergibt 3); DuckDB, Snowflake, BigQuery und MySQL liefern 3.5. Eine Abfrage, die auf dem einen stimmt, kann auf dem anderen falsch sein: Machen Sie die Dezimalzahl explizit, dann stimmt sie überall. Quoten und Anteile brauchen Dezimalzahlen.

SELECT 7 / 2 AS on_duckdb,
       7 * 1.0 / 2 AS everywhere,
       100.0 * 149 / 2500 AS cancel_pct;
on_duckdbeverywherecancel_pct
3.53.55.96
In Randori ausprobieren