VerySource

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 1716|回复: 13

请各位帮我看一下哪里出错?消息 207,级别 16,状态 3,列名 'je' 无效

[复制链接]

2

主题

9

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
发表于 2020-1-3 00:00:02 | 显示全部楼层 |阅读模式
create view v_all
as

select wzlb=left(wzdm,2),
rkje=sum(je),
ckje=0,
fsrq=rksj,
kcje=0
from 物资材料入库

union all

select wzlb=left(劳保用品单位领用.wzdm, 2),
rkje=0,
ckje=sum(劳保用品单位领用.je)+sum(劳保用品个人领用.je),
fsrq=劳保用品单位领用.bgyqrsj,
kcje=0
from 劳保用品单位领用,劳保用品个人领用
where 劳保用品个人领用.wzdm=劳保用品单位领用.wzdm and 劳保用品个人领用.bgyqrsj=劳保用品单位领用.bgyqrsj

union all

select wzlb=left(wzdm, 2),
rkje=0,
ckje=0,
fsrq=null,
kcje=dj*sl
from 物资库存


在查询分析器里运行上面一段代码,执行查询时无法通过。
服务器: 消息 207,级别 16,状态 3,过程 v_all,行 4
列名 'je' 无效。
回复

使用道具 举报

0

主题

93

帖子

46.00

积分

新手上路

Rank: 1

积分
46.00
发表于 2020-1-3 09:33:01 | 显示全部楼层
je在物资材料入库是不是没有这一列
回复

使用道具 举报

0

主题

93

帖子

46.00

积分

新手上路

Rank: 1

积分
46.00
发表于 2020-1-3 09:36:01 | 显示全部楼层
sum用聚合函数
需要分组group by 列名...
回复

使用道具 举报

2

主题

9

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-1-3 09:45:01 | 显示全部楼层
有的呀~

表的结构如下
物资材料入库

字段名        字段类型        字段长度        允许为空        说明
RKBM        VARCHAR        20        否        入库单编号
RKSJ        DATETIME        8        否        入库时间
WZDM        VARCHAR        10        否        物资代码
SL        FLOAT        8        否        数量
DJ        FLOAT        8        否        单价
JE        FLOAT        8        否        金额
GHFS        VARCHAR        20        是        供货方式
GHDW        VARCHAR        50        是        供货单位
CZYDM        VARCHAR        10        是        计划员代码
BGYDM        VARCHAR        10        是        保管员代码
BGYQR        VARCHAR        2        是        保管员确认标志
BGYQRSJ        DATETIME        8        是        保管员确认时间
KCSL        FLOAT        8        否        库存数量
YRKCBZ         VARCHAR        2        是        已入库存标志
ZJHX        VARCHAR        2        是        资金核销标志
HXSJ        SMALLDATETIR        4        是        核销时间
CWQR        CHAR        1        是        财务确认标志

物资库存
字段名        字段类型        字段长度        允许为空        说明
WZDM        VARCHAR        10        否        物资代码
DJ        FLOAT        8        是        单价
SL        FLOAT        8        否        数量
SJ        DATETIME        8        否        时间
BGYDM        VARCHAR        10        是        保管员代码

劳保用品单位领用
字段名        字段类型        字段长度        允许为空        说明
zth        VARCHAR        10        是        专题号
SJ        CHAR        10        否        时间
DWMC        VARCHAR        20        否        单位名称
ZM        VARCHAR        20        是        组名
WZMC        VARCHAR        40        否        物资名称
WZDM        VARCHAR        10        否        物资代码
GGXH        VARCHAAR        60        是        规格型号
DW        VARCHAAR        12        是        计量单位
LYBZ        FLOAT        8        否        领用标准
RS        FLOAT        8        否        人数
ZS        FLOAT        8        否        总数
DJ        FLOAT        8        是        单价
JE        FLOAT        8        是        金额
BGYDM        VARCHAAR        12        是        保管员代码
BGYQR        VARCHAAR        2        是        保管员确认标志
BGYQRSJ        CHAR        10        是        保管员确认时间
LLDBH        VARCHAAR        15        否        领料单编号
YSCBZ        CHAR        1        是        已生成标志
QX        NUMERIC        9        是        使用期限
CWQR        VARCHAAR        1        是        财务确认


劳保用品个人领用
字段名        字段类型        字段长度        允许为空        说明
LLDBH        VARCHAR        25        是        领料单编号
ZTH        VARCHAR        10        是        专题号
DWMC        VARCHAR        14        否        单位名称
XM        VARCHAR        20        否        姓名
GZ        VARCHAR        20        是        工种
WZDM        CHAR        10        是        物资代码
WZMC        VARCHAR        40        是        物资名称
GGXH        VARCHAR        60        是        规格型号
DW        VARCHAR        8        是        计量单位
SYQX        INT        4        是        使用期限
LYSJ        VARCHAR        10        是        领用时间
LYSL        FLOAT        8        是        领用数量
DJ        FLOAT        8        是        单价
BGYQR        VARCHAR        2        是        保管员确认标志
BGYQRSJ        VARCHAR        12        是        保管员确认时间
YSCBZ        VARCHAR        2        是        已生成标志
HZBH        CHAR        13        是        汇总编号
CWQR        VARCHAR        1        是        财务确认

回复

使用道具 举报

0

主题

100

帖子

53.00

积分

新手上路

Rank: 1

积分
53.00
发表于 2020-1-3 09:51:02 | 显示全部楼层
没有这个列.
回复

使用道具 举报

0

主题

93

帖子

46.00

积分

新手上路

Rank: 1

积分
46.00
发表于 2020-1-3 09:57:01 | 显示全部楼层
select wzlb=left(wzdm,2),
rkje=sum(je),
ckje=0,
fsrq=max(rksj),
kcje=0
from 物资材料入库
group by left(wzdm,2)


select wzlb=left(wzdm,2),
rkje=je,--去掉sum
ckje=0,
fsrq=max(rksj),
kcje=0
from 物资材料入库
回复

使用道具 举报

0

主题

93

帖子

46.00

积分

新手上路

Rank: 1

积分
46.00
发表于 2020-1-3 10:06:01 | 显示全部楼层
楼主分开执行一下就明白,是那一个语句出错.
也可以把数据贴一部分出来瞧瞧
回复

使用道具 举报

0

主题

93

帖子

46.00

积分

新手上路

Rank: 1

积分
46.00
发表于 2020-1-3 10:09:01 | 显示全部楼层
select wzlb=left(劳保用品单位领用.wzdm, 2),
rkje=0,
ckje=sum(劳保用品单位领用.je)+sum(劳保用品个人领用.je),
fsrq=劳保用品单位领用.bgyqrsj,
kcje=0
from 劳保用品单位领用,劳保用品个人领用
where 劳保用品个人领用.wzdm=劳保用品单位领用.wzdm and 劳保用品个人领用.bgyqrsj=劳保用品单位领用.bgyqrsj
group by left(劳保用品单位领用.wzdm, 2),劳保用品单位领用.bgyqrsj --用了sum都需要分组
回复

使用道具 举报

2

主题

9

帖子

5.00

积分

新手上路

Rank: 1

积分
5.00
 楼主| 发表于 2020-1-3 10:18:01 | 显示全部楼层
一个报表,想要分别求出某类别的物品一段时期内的入库金额和领用出库金额。
fsrq=max(rksj)这里为什么要改成这样呢?

刚试着改了
select wzlb=left(wzdm,2),
rkje=sum(je),
ckje=0,
fsrq=max(rksj),
kcje=0
from 物资材料入库
group by left(wzdm,2)

依然还是提示列名无效。
回复

使用道具 举报

0

主题

93

帖子

46.00

积分

新手上路

Rank: 1

积分
46.00
发表于 2020-1-3 10:21:01 | 显示全部楼层
分开在执行,看一下有没有出错,不一定是这个语句
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

Archiver|手机版|CopyRight © 2008-2023|verysource.com ( 京ICP备17048824号-1 )

快速回复 返回顶部 返回列表