Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Oracle 两个串联字符列的结果具有什么数据类型?_Oracle - Fatal编程技术网

Oracle 两个串联字符列的结果具有什么数据类型?

Oracle 两个串联字符列的结果具有什么数据类型?,oracle,Oracle,OracleDocs说2个连接字段返回char类型,但是char类型的最大长度是2000字节 在我的例子中,两列具有char类型,每列的长度为2000字节 例如: create table temp( column_1 char(2000), column_2 char(2000) ); select column_1 || column_2 from temp; 从: 连接两个字符串的结果是另一个字符 绳子如果两个字符串都是数据类型CHAR,则结果为 数

OracleDocs说2个连接字段返回char类型,但是char类型的最大长度是2000字节

在我的例子中,两列具有char类型,每列的长度为2000字节

例如:

   create table temp(
      column_1 char(2000),
      column_2 char(2000)
   );

select column_1 || column_2 from temp;
从:

连接两个字符串的结果是另一个字符 绳子如果两个字符串都是数据类型CHAR,则结果为 数据类型为CHAR,限制为2000个字符。如果任一字符串的数据类型为VARCHAR2, 结果的数据类型为VARCHAR2,限制为4000个字符。如果 任一参数都是CLOB,结果是临时CLOB。拖尾 不管怎样,字符串中的空格都是通过串联保留的 字符串或CLOB的数据类型


因此,这意味着,当您连接两个长度为2000的列时,在连接后,它将是长度为2000的字符类型,其余的将被忽略。

如果两个列具有varchar2(4000)类型,在连接后,其余的也将被忽略?我是confused@user3555529:-不,那么它将不会被忽略!据我所知,当列具有char数据类型时,ignoration将起作用。谢谢大家!@用户355529:-不客气。如果这对你有帮助,一定要接受这个答案!