我第一次使用oracle sql developer。我想创建一个视图,其中表的两列以斜杠组合和分隔。 我已经在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中翻译此查询?
答案 0 :(得分:1)
Oracle使用标准||
运算符进行字符串连接,而不使用+
:
SELECT ID AS W_ID,
(data1 || ' - ' || data2) AS W_CODE,
data3 AS W_TEXT
FROM table1
WHERE data3 = 1;
铸造为字符串是不必要的。 Oracle将自动执行该操作。如果这样做,TO_CHAR()
是Oracle中比较通俗的方法,因为它使您可以控制数字和日期的格式。
我不了解+
的用途,因此我将其删除。也许您想要abs()
?