Chinaunix

标题: sh执行报错--子句包含一个外笛卡尔积 [打印本页]

作者: Newbee_Mofi    时间: 2017-12-01 11:38
标题: sh执行报错--子句包含一个外笛卡尔积
echo "请输入起始日期"
read start
echo "请输入终止日期"
read end
echo $start
echo $end
dbaccess vsd@tjserver  << !
select a.comcode,policyno,a.riskcode,a.startdate,a.enddate,purerate,disrate,
sumamount,sumpremium,agentcode,insuredname,a.Handler1Code,
k.username,i.username,m.username
,(case when coinsflag<>'00'
then sumpremium / 100 * (select
coinsrate from prpccoins  c
where coinstype='1' and a.proposalno=c.proposalno)
when coinsflag='00'
then sumpremium
end ) premium
from prpcmain a,prpcinsured b,
outer vsdims3gdb@tjserver:utiisales k,
outer vsdims3gdb@tjserver:utiiuser h,
outer vsdims3gdb@tjserver:utiisales i,
outer vsdims3gdb@tjserver:utiiuser j,
outer vsdims3gdb@tjserver:utiisales m,
outer prpcagent   l
where a.proposalno=b.proposalno
and underwriteflag in ('1','3')
and othflag[3]='0' and insuredflag[1]='1'
and othflag[4]='0' and a.comcode[1,6]='350993'
and handler1code=k.usercode
and handler1code=h.usercode
and a.handlercode=m.usercode
and a.startdate between '$start' and '$end';
!
执行时
  395: The where clause contains an outer Cartesian Product.
Error in line 11
Near character position 14
麻烦指点一下这个“子句包含一个外笛卡尔积”怎么解决

作者: wh7211    时间: 2017-12-01 15:18
http://www.oninit.com/errorcode/index.php?pageid=-395
作者: q1208c    时间: 2017-12-01 18:43
回复 1# Newbee_Mofi

是不是先把这个sql直接在数据库上执行一下看看先呢?

shell未必要背这个锅吧?

作者: 海棠晃    时间: 2017-12-02 12:10
回复 3# q1208c

这个informix数据库的错吧
作者: q1208c    时间: 2017-12-02 20:53
回复 4# 海棠晃

哈哈,这高级货我真没用过,不好说。
作者: Newbee_Mofi    时间: 2017-12-04 22:22
一怒之下我把下面这段注销了 好了 简直了 ~~主要是没见过这个报错
outer vsdims3gdb@tjserver:utiisales k,
outer vsdims3gdb@tjserver:utiiuser h,
outer vsdims3gdb@tjserver:utiisales i,
outer vsdims3gdb@tjserver:utiiuser j,
outer vsdims3gdb@tjserver:utiisales m,




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2