我试图在给出答案的情况下执行IBM书中的一个问题语句,但我遇到了一个错误,说
SELECT在此位置无效
SELECT LASTNAME, SALARY,
DECIMAL(SALARY*1.05,9,2) AS "INC-Y-SALARY",
DECIMAL(SALARY*1.05/12,9,2) AS "INC-M-SALARY"
FROM EMPLOYEE
WHERE SALARY*1.05 <= 20000
ORDER BY SALARY
当我用替换第二行和第三行时,错误消失了
SALARY*1.05 AS "INC-Y-SALARY",
SALARY*1.05/12 AS "INC-M-SALARY"
但是问题需要这些列有两个小数位
你在找CAST()
吗?
SELECT LASTNAME, SALARY,
CAST(SALARY*1.05 AS DECIMAL(9,2)) AS "INC-Y-SALARY",
CAST(SALARY*1.05/12 AS DECIMAL(9,2)) AS "INC-M-SALARY"
这里有一个db<gt;不停摆弄
我找到了一个使用truncate的解决方案。我以前不知道如何使用truncate。。。
SELECT LASTNAME, SALARY,
TRUNCATE((SALARY*1.05),2) AS "INC-Y-SALARY",
TRUNCATE((SALARY*1.05/12),2) AS "INC-M-SALARY"
FROM EMPLOYEE
WHERE SALARY*1.05 <= 20000
ORDER BY SALARY;
谢谢你的帮助!
附带说明:我使用MySQL