首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >A -6表矩阵中的缺失记录

A -6表矩阵中的缺失记录
EN

Stack Overflow用户
提问于 2020-05-24 18:54:28
回答 1查看 39关注 0票数 0

如能在解决以下问题方面提供任何帮助,我将不胜感激。我在请求提供一些数据后,重申了这个问题

我有以下sql表

  1. qual =资格代码列表(质量代码、描述)。

HSE-01 HSE诱导HSE-02安全简报会HSE-03首份AID

  1. 劳动=劳动代码列表(劳动代码,名称)

10072无名氏10073简史密斯10074马克吐温

  1. 工艺=工艺代码列表(工艺,desc)

机械机械电工梅子水管工

  1. 劳动工艺=附在每个劳动代码(劳动代码,工艺)上的工艺

10072 MECH 10073 ELEC 10074李

  1. qualcode=与每种工艺相关的资格(质量代码,工艺)

HSE-01 MECH 02 ELEC HSE-03李

  1. laborqual =每个劳动id的实际资格(劳动代码,质量代码)

10072 HSE-01 10073 HSE-01 10072 HSE-02 10074 HSE-02

每个资质代码可能与一种或多种工艺相关,每种劳动代码都有一种工艺。

从上面表5中的数据可以看出,资格认证HSE-03与梅花船相关,HSE-02与ELEC船相关。

然而,从表6(实际资格)中我们可以看出

马克吐温是一艘梅花船,但不拥有HSE-03 qualification

  • Jane Smith是ELEC,但不拥有HSE-02 qualification.

我需要确定所有的资格,应该持有的每一个劳动法,但不是。结果应该是

代码语言:javascript
复制
    10073   HSE-02
    10074   HSE-03

我不介意劳动法是否有其他他们不需要的资格,例如

代码语言:javascript
复制
    10072   HSE-02
    10073   HSE-01
    10074   HSE-02

我只想知道我们在哪里错过了相关的资格

谢谢你的帮助

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-24 23:26:33

您可以加入laborcraftqualcraft,并使用not existslaborqual中的“缺失”行进行切换。

代码语言:javascript
复制
select lc.laborcode, qc.qualcode
from laborcraft lc
inner join qualcraft qc on qc.craft = lc.craft
where not exists (
    select 1 
    from laborqual lq 
    where lq.laborcode = lc.laborcode and lq.qualcode = qc.qualcode
)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61990881

复制
相关文章

相似问题

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