将多个变量传递给脚本以进行 SQL 查询

将多个变量传递给脚本以进行 SQL 查询

我有一个名为 info_code 的脚本:

#!/bin/ksh

if [ $# -eq 0 ] ;then
  echo "Enter code : \c"
  read code
  echo ""
else
  code=$1
fi

code=`echo ${code} | tr '[a-z]' '[A-Z]'`

echo "select * from table 
where request_no=|$code|

当我运行 info_code 时,我必须将请求的代码作为变量放在最后。我想每次插入多个代码。 request_no 列是 varchar。

答案1

你可能想要这样的东西:

#!/bin/ksh
typeset -Au codes
read -rA codes?"Enter codes: "
IFS=,
sql="select * from table where request_no in (${codes[*]})"
echo "$sql"

运行看起来像:

Enter codes: foo bar baz
select * from table where request_no in (FOO,BAR,BAZ)

正确引用剩下的值作为练习。

相关内容