首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >我需要帮助从具有id、序列号、进程(Prc)和结果的表中获取数据。

我需要帮助从具有id、序列号、进程(Prc)和结果的表中获取数据。
EN

Database Administration用户
提问于 2018-10-02 04:55:09
回答 1查看 26关注 0票数 0

能够获得该序列号的最近失败进程(Prcs)的查询,如果最近的进程(Prcs)被传递,它将不会显示。但是我的问题是,如果最后一个进程通过了,不要显示串行number.Now im能够得到最近失败的进程,但是如果最后一个进程是pass.Thank you,我想忽略它

我尝试的查询-:

代码语言:javascript
复制
SELECT tt.id,tt.serialnumber,tt.prcs,tt.result
FROM tblTest tt
INNER JOIN
    (SELECT serialnumber,prcs MAX(id) AS MaxID
    FROM tblTest 
    GROUP BY  serialnumber,prcs) groupedtt 
ON tt.prcs = groupedtt.prcs AND tt.id = groupedtt.MaxID
WHERE result='FAIL' AND tt.sn='A01'  
ORDER by serialnumber
EN

回答 1

Database Administration用户

回答已采纳

发布于 2018-10-02 05:05:06

尝试:

代码语言:javascript
复制
WITH cte AS ( SELECT id, 
                     serialnumber, 
                     prcs, 
                     result, 
                     ROW_NUMBER() OVER (PARTITION BY serialnumber 
                                        ORDER BY id DESC) rn
              FROM tblTest )
SELECT id, serialnumber, prcs, result
FROM cte
WHERE rn = 1
  AND result = 'FAIL'

如果“最后进程”和“第五进程”失败,应同时显示两者

尝试:

代码语言:javascript
复制
SELECT t1.*
FROM tblTest t1
WHERE t1.result = 'FAIL'
  AND NOT EXISTS ( SELECT 1
                   FROM tblTest t2
                   WHERE t1.serialnumber = t2.serialnumber 
                     AND t1.id < t2.id
                     AND t2.result != 'FAIL' )
票数 0
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/219034

复制
相关文章

相似问题

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