我是第一次使用oracle sql开发人员。我想创建一个视图,其中两列表组合并用斜杠分隔。我已经在 ssms 中完成了此操作,但是当我为 sql dev 编写相同的代码时,它会返回诸如"指定数字无效"之类的问题。
SELECT ID AS W_ID, CAST(data1 AS VARCHAR)+' - '+data2 AS W_CODE, +data3 AS W_TEXT
FROM table1
WHERE data3=1;
如何在甲骨文中翻译此查询?
Oracle 使用标准的 ||
运算符进行字符串连接,而不是+
:
SELECT ID AS W_ID,
(data1 || ' - ' || data2) AS W_CODE,
data3 AS W_TEXT
FROM table1
WHERE data3 = 1;
不必强制转换为字符串。 甲骨文将自动执行此操作。 如果这样做,TO_CHAR()
是 Oracle 中更口语化的方法,因为它允许您控制数字和日期的格式。
我不明白+
的目的,所以我删除了它。 也许你想要abs()
?