我正在尝试使用CLP来调用使用LIKE的SQL查询:
SELECT NAME, PLACE, ANIMAL from ZOOTABLE where NAME like 'TIG%' or NAME like 'LIO%';
使用DB2 CLP,我按照IBM文档运行:
db2 "SELECT NAME, PLACE, ANIMAL from ZOOTABLE where NAME like 'TIG\%' or NAME like 'LIO\%'";
我收到此错误:
SQL0104N意外的令牌"%"发现在" NAME之后 TIG&#34 ;.预期的代币可能包括:""。 SQLSTATE =
任何建议都将不胜感激。谢谢!
答案 0 :(得分:1)
为什么不使用语法,没有任何转义的语句......?同时在结束报价后删除分号或将其放在结束报价之前。 Db2错误来自尝试转义(\%
)。
db2 "SELECT NAME, PLACE, ANIMAL from ZOOTABLE where NAME like 'TIG%' or BNAME like 'LIO%'"
答案 1 :(得分:0)
我无法使用Escape或其他任何东西来完成这项工作。但是,我确实设法将输出导出到CSV(Excel)文件,这给了我所需的输出:
以DB2用户身份登录:
#!/ bin / bash -xv
set -vx
export Host = $ 1
export sid = $ 2
db2“EXPORT TO /tmp/db2select.csv由NOCHARDEL修改的选择名称,地点,动物来自ZOOTABLE”
sed -n'/ TIG / p'/ tmp / db2select.csv | tee /tmp/zooselect.csv
sed -n'/ LIO / p'/ tmp / db2select.csv | tee -a /tmp/zooselect.csv
这给了我所需的基本输出,然后我可以根据需要操作Excel文件