Arithmetic in SQL uses + - * /, plus a handful of functions:
ROUND(x, 2) rounds to two decimal places. Exact decimals round halves away from zero: 2.5 becomes 3 and -2.5 becomes -3. Floating-point columns can round halves differently in some databases.
CEIL(x) rounds up and FLOOR(x) rounds down. On negatives, FLOOR(-1.2) is -2.
x % y (or MOD(x, y)) is the remainder: quantity % 20 = 0 means a whole number of cartons of 20.
ABS(x), POWER(x, n), SQRT(x) do what their names say.
Two traps. Whole numbers divided by whole numbers drop the decimals, so CEIL(25 / 12) is 2, not 3; write 25 / 12.0. And dividing by zero stops the query in PostgreSQL and SQL Server. The database here returns NULL instead, but write portable SQL anyway: x / NULLIF(y, 0) turns a zero divisor into NULL, so the result is NULL rather than an error.