我正在调用bash脚本来准备一些目录等。 在某些时候,它还调用psql脚本,如下所示:
psql $PSQL_LOGIN -v SERVER=$SERVER
到目前为止一切顺利。
我想要执行的sql是这样的:
select 'wget :SERVER.xxxx.com?geoX=id1&geoY=id2'
from table1 where id1 > zzz;
我对此的期望是一个看起来像
的字符串wget test.xxx.com?geoX=yyy&geoY=qqq
在oracle中,我可以做类似
的事情select 'wget' || :SERVER '.xxx.com?geoX='|| id1 || etc etc
但是当它应该嵌入到字符串中时,我无法在postgres中使用它 我试图逃避'和但是到目前为止还没有运气。 有人有任何想法吗?
答案 0 :(得分:0)
我找到了这个问题的答案。 从shell脚本调用时,它在shell脚本本身就是这样 逃跑必须要做。所以不是上面的,我应该像这样做:
psql $PSQL_LOGIN -V SERVER="'$SERVER'"
这是双引号和单引号。 然后sql文件可以像在Oracle中一样完成:
select 'wget' || :SERVER '.example.com?geoX='|| id1 || ' etc