1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
|
# name: test/sql/variables/test_variables.test
# description: Test SQL variables
# group: [variables]
statement ok
PRAGMA enable_verification
statement ok
SET VARIABLE animal = 'duck'
query I
SELECT GETVARIABLE('animal')
----
duck
statement ok
PREPARE v1 AS SELECT GETVARIABLE($1);
query I
EXECUTE v1('animal');
----
duck
statement ok
CREATE MACRO _(x) AS getvariable(x);
query I
SELECT _('animal')
----
duck
# overwriting
statement ok
SET VARIABLE animal='bird'
query I
SELECT GETVARIABLE('animal')
----
bird
query III
FROM duckdb_variables();
----
animal bird VARCHAR
query III
SHOW VARIABLES
----
animal bird VARCHAR
statement ok
RESET VARIABLE animal
query I
SELECT GETVARIABLE('animal')
----
NULL
# setting from a subquery
statement ok
CREATE TABLE animal_list(a VARCHAR);
statement ok
INSERT INTO animal_list VALUES ('duck'), ('goose');
statement ok
SET VARIABLE animals=(SELECT LIST(a) FROM animal_list)
query I
SELECT GETVARIABLE('animals')
----
[duck, goose]
statement error
SET VARIABLE animals=UNNEST([1,2,3])
----
can only handle a single value
# variable does not exist
query I
SELECT GETVARIABLE('xxx')
----
NULL
|