CURRENT_LOAD_SOURCE
在 COPY 语句的范围内调用时,返回加载所使用的文件名。存在以下例外:
-
如果在
COPY
语句的上下文之外调用函数,则返回 NULL。 -
如果通过未设置源的 UDL 调用函数,则返回字符串
<unknown>
。
COPY LOCAL 不支持此函数。
行为类型
稳定语法
CURRENT_LOAD_SOURCE()
示例
创建表并在加载时使用两个单独文件的名称填充以下其中一列:
=> CREATE TABLE t (c1 integer, c2 varchar(50), c3 varchar(200));
CREATE TABLE
=> COPY t (c1, c2, c3 AS CURRENT_LOAD_SOURCE())
FROM '/home/load_file_1' ON exampledb_node02,
'/home/load_file_2' ON exampledb_node03 DELIMITER ',';
Rows Loaded
-------------
5
(1 row)
=> SELECT * FROM t;
c1 | c2 | c3
----+--------------+-----------------------
2 | dogs | /home/load_file_1
1 | cats | /home/load_file_1
4 | superheroes | /home/load_file_2
3 | birds | /home/load_file_1
5 | whales | /home/load_file_2
(5 rows)