在执行查询中将字符附加到变量

时间:2017-06-05 13:06:07

标签: sql postgresql

我想执行一个动态SQL语句,该语句搜索姓氏始终为常量且名字是变量的名称。 这是我编写的一个查询,用于选择名称为'测试姓氏'的行。

EXECUTE 'SELECT name FROM users 
        WHERE name=$1 lastname'
USING ('Test');  

这会产生语法错误。有可能这样做吗?

1 个答案:

答案 0 :(得分:1)

我认为你需要这样的东西:

EXECUTE 'SELECT user_id FROM users 
        WHERE name=$1'
USING  Test||' lastname' ; 

此处Test是变量,'lastname'是硬编码值

另一种方式是@JorgeCampos提到:

...WHERE name=$1 || '' lastname''' USING 'Test';