Объединение двух столбцов таблицы и возврат их в виде одного столбца, разделенного символом

Я использую разработчика 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?

ReactJs | Supabase | Добавление данных в базу данных
ReactJs | Supabase | Добавление данных в базу данных
Это и есть ваш редактор таблиц в supabase.👇
Понимание Python и переход к SQL
Понимание Python и переход к SQL
Перед нами лабораторная работа по BloodOath:
0
1
44
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 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()?

он возвращает мне ошибку, в которой отсутствует правая скобка.. --- редактировать: правая скобка идет перед AS! Большое спасибо!

helloandroiddevelopers 29.05.2019 16:14

@helloandroiddevelopers - скобки вообще не нужны.

Alex Poole 29.05.2019 16:25

Другие вопросы по теме