Вопрос

Что такое оператор конкатенации строк в Oracle SQL?

Есть ли какие-нибудь «интересные» функции, на которые мне следует обратить внимание?

(Это кажется очевидным, но я не смог найти предыдущий вопрос, задающий этот вопрос).

Это было полезно?

Решение

Это || , например:

select 'Mr ' || ename from emp;

Единственный " интересный " Особенность, которую я могу придумать, заключается в том, что 'x' || null возвращает 'x' , а не null , как вы, возможно, ожидаете.

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

Есть и конкатат, но он мало привыкает

select concat('a','b') from dual;

Я бы предложил Concat, когда имел дело с 2 строками и || Когда эти струны более 2:

select concat(a,b)
  from dual

или

  select 'a'||'b'||'c'||'d'
        from dual
DECLARE
     a      VARCHAR2(30);
     b      VARCHAR2(30);
     c      VARCHAR2(30);
 BEGIN
      a  := ' Abc '; 
      b  := ' def ';
      c  := a || b;
 DBMS_OUTPUT.PUT_LINE(c);  
   END;

output :: Abc def

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top