Sql 选择列表中的列或表达式无效
我得到这个错误: [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0122-选择列表中的列CDSTYL或表达式无效 当我尝试运行下面的查询时 CDSTYL是CDCART00中的有效列 我不确定问题是什么。SQL是我试图从中获取数据的库存管理系统的一部分Sql 选择列表中的列或表达式无效,sql,odbc,Sql,Odbc,我得到这个错误: [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0122-选择列表中的列CDSTYL或表达式无效 当我尝试运行下面的查询时 CDSTYL是CDCART00中的有效列 我不确定问题是什么。SQL是我试图从中获取数据的库存管理系统的一部分 select x.item, x.lot, sum(x.case_qty) lpn_inv_ttl, sum(x.carton_qty) carton_tt
select
x.item,
x.lot,
sum(x.case_qty) lpn_inv_ttl,
sum(x.carton_qty) carton_ttl,
sum(x.sku_invn) sku_inv_ttl,
sum(x.case_qty)+sum(x.carton_qty) - sum(x.sku_invn) inv_discrepany
from
(select
IDSTYL as Item,
IDBCHN as Lot,
IDQTY as case_qty,
0 sku_invn,
0 as carton_qty
from
idcase00
where
IDSTAT in ('30', '50', '55', '60', '65', '90')
union all
select
CDSTYL as Item,
cdbchn as Lot,
0 as case_qty,
0 as sku_invn,
sum(cdpaku) as carton_qty
from
chcart00
join
CDCART00 on chcasn = cdcasn
where
chstat < '85'
union all
select
SKSTYL as Item,
SKBCHN as Lot,
0 as case_qty,
(SKAOHQ + SKUOHQ) AS sku_invn,
0 as carton_qty
from
SKINVN00) X
group by
x.item, x.lot
having
sum(x.case_qty) + sum(x.carton_qty) != sum(x.sku_invn)
您需要一个由以下人员组成的小组:
select CDSTYL as Item,
cdbchn as Lot,
0 as case_qty,
0 as sku_invn,
sum(cdpaku) as carton_qty
from chcart00
join CDCART00
on chcasn = cdcasn
where chstat < '85'
group by CDSTYL ,cdbchn
您需要一个由以下人员组成的小组:
select CDSTYL as Item,
cdbchn as Lot,
0 as case_qty,
0 as sku_invn,
sum(cdpaku) as carton_qty
from chcart00
join CDCART00
on chcasn = cdcasn
where chstat < '85'
group by CDSTYL ,cdbchn
您使用的是哪种数据库管理系统?sql server、MySQL等。您是否尝试独立运行每个select以查看是否有错误?IDSTYL和CDSTYL列是否具有相同的类型?根据错误文本,它不是sql server。@Rominus-不完全确定。请参阅原始帖子中的编辑。您使用的是哪些数据库管理系统?sql server、MySQL等。您是否尝试独立运行每个select以查看是否有错误?IDSTYL和CDSTYL列是否具有相同的类型?根据错误文本,它不是sql server。@Rominus-不完全确定。请参阅原始帖子中的编辑。群组成员还应包括CDSTYLE。由于格式问题,我没有看到这一点,但您更正得非常好。。。作品group by CDSTYL,CDBCHN group by还应该包括CDSTYLE。由于格式问题,我没有看到这一点,但您的回答非常正确。。。作品按CDSTYL、CDBCHN分组