Using mysql as a Calculator
Problem
You need a quick way to evaluate an expression.
Solution
Use mysql as a calculator.
MySQL doesn’t require every
SELECT statement to
refer to a table, so you can select the results of arbitrary
expressions.
Discussion
SELECT statements typically
refer to some table or tables from which you’re retrieving rows.
However, in MySQL, SELECT need not
reference any table at all, which means that you can use the mysql program as a calculator for evaluating
an expression:
mysql>SELECT (17 + 23) / SQRT(64);
+----------------------+
| (17 + 23) / SQRT(64) |
+----------------------+
| 5.00000000 |
+----------------------+This is also useful for checking how a comparison works. For example, to determine whether a given string comparison is case-sensitive, try a statement such as the following:
mysql>SELECT 'ABC' = 'abc';
+---------------+
| 'ABC' = 'abc' |
+---------------+
| 1 |
+---------------+The result of this comparison is 1 (meaning “true”; in general,
nonzero values are true).
Expressions that evaluate to false
return zero:
mysql>SELECT 'ABC' = 'abcd';
+----------------+
| 'ABC' = 'abcd' |
+----------------+
| 0 |
+----------------+User variables can store the results of intermediate calculations. The following statements use variables this way to compute the total cost of a hotel bill:
mysql>SET @daily_room_charge = 100.00;mysql>SET @num_of_nights = 3;mysql>SET @tax_percent = 8;mysql>SET @total_room_charge = @daily_room_charge * @num_of_nights;mysql> ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access