MySQL是一種關系型數據庫管理系統,但也可以用來進行簡單的計算。比如,我們可以使用MySQL編寫一個簡單的計算器來進行基本的運算。
CREATE FUNCTION calculator(input VARCHAR(255)) RETURNS decimal(10,2) BEGIN DECLARE x DECIMAL(10,2); DECLARE y DECIMAL(10,2); DECLARE op CHAR(10); SET op = ''; SET x = ''; SET y = ''; IF input REGEXP '^[0-9][0-9\s\.\-\+\/\*]+$' THEN SET y = TRIM(SUBSTRING_INDEX(input, ' ', -1)); SET input = TRIM(SUBSTRING_INDEX(input, ' ', 1)); SET op = TRIM(SUBSTRING_INDEX(input, ' ', -1)); SET x = TRIM(SUBSTRING_INDEX(input, ' ', 1)); END IF; CASE op WHEN '+' THEN SET x = x + y; WHEN '-' THEN SET x = x - y; WHEN '*' THEN SET x = x * y; WHEN '/' THEN SET x = x / y; END CASE; RETURN x; END;
上述代碼創建了一個名為"calculator"的函數,它接受一個字符串參數并返回一個十進制數。函數首先將參數拆分成三個部分:第一個操作數,操作符和第二個操作數。然后,使用CASE語句根據操作符計算結果。最終,函數返回計算結果。
SELECT calculator('5 + 10'); -- 結果為 15.00 SELECT calculator('10 - 5'); -- 結果為 5.00 SELECT calculator('5 * 10'); -- 結果為 50.00 SELECT calculator('10 / 5'); -- 結果為 2.00
使用上述代碼,我們可以用MySQL編寫一個簡單的計算器來進行基本的運算。提醒一下,該計算器只支持加減乘除四則運算,且輸入格式應為"操作數 操作符 操作數"。功能有限,不建議在實際應用中使用。
上一篇mysql 查詢并排序
下一篇css表格中間有邊框