PolarDB-for-PostgreSQL
36 строк · 671.0 Байт
1CREATE EXTENSION ltree_plpython2u CASCADE;
2
3
4CREATE FUNCTION test1(val ltree) RETURNS int
5LANGUAGE plpythonu
6TRANSFORM FOR TYPE ltree
7AS $$
8plpy.info(repr(val))
9return len(val)
10$$;
11
12SELECT test1('aa.bb.cc'::ltree);
13
14
15CREATE FUNCTION test1n(val ltree) RETURNS int
16LANGUAGE plpython2u
17TRANSFORM FOR TYPE ltree
18AS $$
19plpy.info(repr(val))
20return len(val)
21$$;
22
23SELECT test1n('aa.bb.cc'::ltree);
24
25
26CREATE FUNCTION test2() RETURNS ltree
27LANGUAGE plpythonu
28TRANSFORM FOR TYPE ltree
29AS $$
30return ['foo', 'bar', 'baz']
31$$;
32
33-- plpython to ltree is not yet implemented, so this will fail,
34-- because it will try to parse the Python list as an ltree input
35-- string.
36SELECT test2();
37