我输入了这个:
SELECT COST TO_CHAR(COALESCE (COST, 0), '$99,990.99')
FROM COURSE;
SELECT COST TO_CHAR(NVL(cost, 0), '$99,990.99') COST
FROM COURSE;
然后我收到这条消息:
SELECT COST TO_CHAR(COALESCE (COST, 0), '$99,990.99')
*
ERROR at line 1:
ORA-00923: FROM keyword not found where expected
SELECT COST TO_CHAR(NVL(cost, 0), '$99,990.99') COST
*
ERROR at line 1:
ORA-00923: FROM keyword not found where expected
我试图以特定的格式获得课程的费用:
COST ------------- $0.00 $1,000.00
任何帮助将不胜感激
答案 0 :(得分:2)
查询应该是这样的:
SELECT TO_CHAR(COALESCE (COST, 0), '$99,990.99') FROM COURSE;
SELECT TO_CHAR(NVL(cost, 0), '$99,990.99') FROM COURSE;
SELECT语句中有太多COST
个关键字。
如果您希望在格式化时保留COST
列,请添加以下逗号:
SELECT COST, TO_CHAR(COALESCE (COST, 0), '$99,990.99') COST_FORMATTED FROM COURSE;
SELECT COST, TO_CHAR(NVL(cost, 0), '$99,990.99') COST_FORMATTED FROM COURSE;
答案 1 :(得分:1)
您在第一个COST
之后缺少逗号:
SELECT COST, TO_CHAR(COALESCE (COST, 0), '$99,990.99') FROM COURSE;
SELECT COST, TO_CHAR(NVL(cost, 0), '$99,990.99') FROM COURSE;
如果选择开头费用,则将第二列命名为COST
是没有意义的。