以文本方式查看主题 - Foxtable(狐表) (http://foxtable.com/bbs/index.asp) -- 专家坐堂 (http://foxtable.com/bbs/list.asp?boardid=2) ---- [求助] sql语句求助 (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=178449) |
-- 作者:dj68301367 -- 发布时间:2022/7/5 13:58:00 -- [求助] sql语句求助 错误提示: .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.5.27.2 错误所在事件: 详细错误信息: \'(\' 附近有语法错误。 下面红色内的代码单独运行没有问题。 sel ect c.*,d.数量 as 期初库存,(d.数量 + c.进仓数量 + c.出仓数量) as 结存数量 from { S ELECT a.JCCDate,a.名称,SUM(a.JCC数量) AS 进仓数量, (SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 < 0 and 名称 = a.名称 and JCCDate = a.JCCDate ) AS 出仓数量 FROM {KC_JCCMX} AS a where a.jcc数量 > 0 and a.仓库名称 = \'祼机成品\' and a.JCCDate BETWEEN \'2022-06-26\' and \'2022-06-30\' GROUP BY a.JCCDate ,a.名称 order BY a.JCCDate ,a.名称 } As c left Join {KC_QC} As d On c.名称 = d.名称 And c.仓库名称 = d.仓库名称 |
-- 作者:有点蓝 -- 发布时间:2022/7/5 14:00:00 -- from ( S ELECT a.JCCDate,a.名称,SUM(a.JCC数量) AS 进仓数量, (SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 < 0 and 名称 = a.名称 and JCCDate = a.JCCDate ) AS 出仓数量 FROM {KC_JCCMX} AS a where a.jcc数量 > 0 and a.仓库名称 = \'祼机成品\' and a.JCCDate BETWEEN \'2022-06-26\' and \'2022-06-30\' GROUP BY a.JCCDate ,a.名称 order BY a.JCCDate ,a.名称 ) As |
-- 作者:dj68301367 -- 发布时间:2022/7/5 14:05:00 -- .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.5.27.2 错误所在事件: 详细错误信息: 关键字 \'order\' 附近有语法错误。 \'(\' 附近有语法错误。 把order BY a.JCCDate ,a.名称 删除了,还提示 .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.5.27.2 错误所在事件: 详细错误信息: 关键字 \'As\' 附近有语法错误。 \'(\' 附近有语法错误。 |
-- 作者:有点蓝 -- 发布时间:2022/7/5 14:13:00 -- 把里面所有的全角的括号改为半角的括号 |
-- 作者:dj68301367 -- 发布时间:2022/7/5 14:23:00 -- .NET Framework 版本:4.0.30319.42000 Foxtable 版本:2022.5.27.2 错误所在事件: 详细错误信息: \')\' 附近有语法错误。 \'(\' 附近有语法错误。 老师,一个一个改测试不行,全改了也不行。 sele ct c.*,d.数量 as 期初库存,(d.数量 + c.进仓数量 + c.出仓数量) as 结存数量 from ( SE LECT a.JCCDate,a.名称,SUM(a.JCC数量) AS 进仓数量 , (SEL ECT SUM(JCC数量) FROM (KC_JCCMX) where jcc数量 < 0 and 名称 = a.名称 and JCCDate = a.JCCDate ) AS 出仓数量 FROM (KC_JCCMX) AS a where a.jcc数量 > 0 and a.仓库名称 = \'祼机成品\' and a.JCCDate BETWEEN \'2022-06-26\' and \'2022-06-30\' GROUP BY a.JCCDate ,a.名称 ) As c left Join (KC_QC) As d On c.名称 = d.名称 And c.仓库名称 = d.仓库名称
|
-- 作者:有点蓝 -- 发布时间:2022/7/5 15:10:00 -- 还是有全角的括号 sele ct c.*,d.数量 as 期初库存,(d.数量 + c.进仓数量 + c.出仓数量) |
-- 作者:dj68301367 -- 发布时间:2022/7/9 9:59:00 -- 谢谢老师,现在碰到新的问题了 得到的结果没有去重, sele ct TOP (100) PERCENT c.* ,(isnull(c.期初库存,0) + isnull(c.进仓数量,0) + isnull(c.出仓数量,0)) as 结存数量 from ( SEL ECT 名称,仓库名称,数量 as 期初库存, 0 as 进仓数量,0 as 出仓数量 FROM {KC_QC} UNION SEL ECT a.名称,a.仓库名称,0 as 期初库存 , ( SELE CT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 > 0 and 名称 = a.名称 and 仓库名称 = a.仓库名称 ) AS 进仓数量 , ( SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 < 0 and 名称 = a.名称 and 仓库名称 = a.仓库名称 ) AS 出仓数量 FROM {KC_JCCMX} AS a where a.仓库名称 = \'祼机成品\' and (a.JCCDate BETWEEN \'2022-06-26\' and \'2022-06-30\') GROUP BY a.名称,a.仓库名称 ) As c
|
-- 作者:有点蓝 -- 发布时间:2022/7/9 10:22:00 -- select distinct c.* ,(isnull(c.期初库存,0..... |
-- 作者:dj68301367 -- 发布时间:2022/7/9 10:48:00 -- 老师,问题在这段代码里,这里就重复了。 SEL ECT 名称,仓库名称,数量 as 期初库存, 0 as 进仓数量,0 as 出仓数量 FROM {KC_QC} UNION SEL ECT a.名称,a.仓库名称,0 as 期初库存 , ( SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 > 0 and 名称 = a.名称 and 仓库名称 = a.仓库名称 ) AS 进仓数量 , ( SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 < 0 and 名称 = a.名称 and 仓库名称 = a.仓库名称 ) AS 出仓数量 FROM {KC_JCCMX} AS a where a.仓库名称 = \'祼机成品\' and (a.JCCDate BETWEEN \'2022-06-26\' and \'2022-06-30\') GROUP BY a.名称,a.仓库名称
|
-- 作者:有点蓝 -- 发布时间:2022/7/9 10:51:00 -- select c.* ,(isnull(c.期初库存,0) + isnull(c.进仓数量,0) + isnull(c.出仓数量,0)) as 结存数量 from ( select distinct * from (SEL ECT 名称,仓库名称,数量 as 期初库存, 0 as 进仓数量,0 as 出仓数量 FROM {KC_QC}
UNION SEL ECT a.名称,a.仓库名称,0 as 期初库存 , ( SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 > 0 and 名称 = a.名称 and 仓库名称 = a.仓库名称 ) AS 进仓数量 , ( SEL ECT SUM(JCC数量) FROM {KC_JCCMX} where jcc数量 < 0 and 名称 = a.名称 and 仓库名称 = a.仓库名称 ) AS 出仓数量 FROM {KC_JCCMX} AS a where a.仓库名称 = \'祼机成品\' and (a.JCCDate BETWEEN \'2022-06-26\' and \'2022-06-30\') GROUP BY a.名称,a.仓库名称) as a) as c |