首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL Server x10数量检查

SQL Server x10数量检查
EN

Stack Overflow用户
提问于 2018-07-03 15:55:11
回答 2查看 70关注 0票数 0

我有一个包含Article_code、日期和数量的表。

我尝试的是找出同一篇文章的数量与前一天相比增加了还是减少了10倍。

例如,我有以下几列

代码语言:javascript
复制
Article  Date Quantity X10     
1001     20-01-2015 22    
1001    21-02-2016 220

对于数量为220的行,应该在x10列中标记为x。

我尝试了以下几点

代码语言:javascript
复制
UPDATE ph
SET [X10] = 'Px10'
FROM 
    [dbo].[Sales] ph 
    inner join [dbo].[Sales] t on (ph.[Article] = t.[Article]) 
WHERE
    ph.[quantity] / t.[quantity] = 10
    OR
    t.[quantity] / ph.[quantity] = 10;
EN

回答 2

Stack Overflow用户

发布于 2018-07-03 15:59:32

尝试以下操作:

代码语言:javascript
复制
select *,
case when exists
(
    select 1
    from yourtable t2
    where dateadd(day,-1,t1.[Date])=t2.[Date]
    and t1.Quantity>=10*t2.Quantity
) then 'x' else '' end as 'x10'
from youttable t1
票数 0
EN

Stack Overflow用户

发布于 2018-07-04 13:48:43

尝尝这个。

代码语言:javascript
复制
UPDATE s
SET    s.x10 = 'x'
FROM   Sales s
       OUTER APPLY (   SELECT   TOP 1 quantity
                       FROM     sales s2
                       WHERE    s2.Article_code = s.Article_code
                                AND s2.date < s.date
                       ORDER BY s2.date DESC ) t
WHERE  s.quantity = 10 * t.quantity;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51149320

复制
相关文章

相似问题

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