首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >试图从不同的表中添加数量

试图从不同的表中添加数量
EN

Stack Overflow用户
提问于 2020-10-07 20:30:30
回答 3查看 64关注 0票数 0

我的任务是在SQL服务器上创建一个数据库,该数据库反映了我们在访问方面的情况(由于内存容量的增加)。我正在尝试编写一个查询,以比较三个表中产品库存级别的数量,并找出其中的差异。我也想写一个查询,这将允许我提取一个产品的报告,这些产品已经连续7天错位。这方面的方程式是表B+C=表A。到目前为止,这是我的代码:

代码语言:javascript
复制
CREATE TABLE EWM
(
    Date_loaded date,
    Sap_code bigint, 
    Product_description varchar(100),
    Location ntext,
    Storage_type varchar(50),
    Quantity int,
    Sap_batch ntext,
    Expiry_date date,
    Stock_type varchar(50)
);

CREATE TABLE USOR
(
    Date_Loaded date,
    Sap_Code bigint,
    Product_description varchar(100),
    Pack text,
    Cost_price float,
    Trade_price float,
    Stock int,
    Location text,
);

CREATE TABLE Wamas
(
    Date_Loaded date,
    Tu_barcode bigint,
    Sap_code bigint,
    Product_description varchar(100),
    Quantity int,
    LG_code varchar(100),
    Geocode text,
    Lot text,
    Expiry_date date
)

CREATE TABLE DSOR
(
    Date_Loaded datetime,
    Sap_code bigint,
    Product_description varchar(100),
    Bin_location text,
    Location varchar(50),
    Pack text,
    Units int,
    Total int,
);

查询尝试:

代码语言:javascript
复制
select 
    USOR.Sap_code, USOR.Product_description, USOR.Pack, USOR.Location,
    sum(USOR.Stock+DSOR.Total) as Total_quantity
from
    USOR
join 
    DSOR on USOR.Sap_Code = DSOR.Sap_code
where 
    USOR.Sap_Code = DSOR.Sap_code
group by 
    USOR.Sap_code

当前收到一个带有联接的错误消息

'USOR.Product_description‘在select列表中无效,因为它既不包含在聚合函数中,也不包含在GROUP BY子句中。

任何帮助都将不胜感激。

*最新情况。谢谢大家的反馈。正如我前面提到的,我是SQL的完全初学者。通过使用内部联接组合两个表中的数量,我成功地得到了我想要的结果。现在,我正在尝试将该查询的结果转换为一个单独的表,我将在另一个查询中这样做,但我在这样做时遇到了困难。以下是我的尝试:

代码语言:javascript
复制
(
select USOR.Sap_Code AS Sap_code, USOR.Product_description as Product_description, USOR.Pack as Pack, USOR.Location as Location, sum(USOR.Stock+DSOR.Total) as Total_quantity 
 from USOR 
 join DSOR
on USOR.Sap_Code = DSOR.Sap_code as Total_quantity
 group by USOR.Sap_code, USOR.Product_description, USOR.Pack, USOR.Location
 ); ````

I am getting the following error message:

'Incorrect syntax near the keyword 'select'.
Msg 156, Level 15, State 1, Line 56
Incorrect syntax near the keyword 'as'
EN

回答 3

Stack Overflow用户

发布于 2020-10-07 20:36:00

代码语言:javascript
复制
select USOR.Sap_code, USOR.Product_description, USOR.Pack, USOR.Location,
      sum(USOR.Stock+DSOR.Total) as Total_quantity
from USOR
join DSOR on USOR.Sap_Code = DSOR.Sap_code
group by USOR.Sap_code, USOR.Product_description, USOR.Pack, USOR.Location
票数 0
EN

Stack Overflow用户

发布于 2020-10-07 20:36:12

我说的是语法;您正在使用sum(...)进行聚合,但是组by无效。而不是使用group by USOR.Sap_code

代码语言:javascript
复制
group by USOR.Sap_code, USOR.Product_description, USOR.Pack, USOR.Location
票数 0
EN

Stack Overflow用户

发布于 2020-10-07 20:42:21

每当使用"GROUP“进行聚合时,必须在GROUP子句中包括所选的所有其他字段。您几乎可以得到以下it...use:

代码语言:javascript
复制
select
    u.Sap_code
        , u.Product_description
        , u.Pack
        , u.Location
        , sum(u.Stock+d.Total) as Total_quantity
    from USOR              u
        inner join DSOR    d on u.Sap_Code = d.Sap_code
    group by
        u.Sap_code        
        , u.Product_description
        , u.Pack
        , u.Location
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64251866

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档