首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SQL查询-值不能与上一行相同

SQL查询-值不能与上一行相同
EN

Stack Overflow用户
提问于 2018-11-06 20:17:44
回答 1查看 36关注 0票数 0

我试图根据项目号和事务类型返回一些数据。我只想看到每种事务类型的最新日期。如何使给定项目号的rn 1中的事务类型与给定项目号的rn 2中的事务类型不相等。

代码语言:javascript
复制
SELECT 
    *
FROM 
    (SELECT  
         [ItemN], 
         [TransacDate], 
         [TransacType],
         ROW_NUMBER() OVER(PARTITION BY [ItemN] ORDER BY [ItemN] ASC) rn
     FROM 
         [Huxley].[dbo].[FGInvDetail]
     WHERE
         ([TransacType] = 1 OR [TransacType] = 3)) a
WHERE 
    rn = 1 OR rn = 2

查询结果

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-11-06 20:31:53

尝试将transactype添加到分区并通过transactype进行排序。最后,您只希望保持rn =1。

代码语言:javascript
复制
   SELECT * FROM (
                SELECT  [ItemN], 
                        [TransacDate], 
                        [TransacType],
                        ROW_NUMBER() OVER(PARTITION BY [ItemN], [transactype] ORDER BY [transacdate] Desc) rn
                    FROM [Huxley].[dbo].[FGInvDetail]
                    where ([TransacType] = 1 or [TransacType] = 3)
              ) a
WHERE rn = 1 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53179372

复制
相关文章

相似问题

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