永发信息网

帮忙分析一条有趣的SQL语句。。。

答案:4  悬赏:40  手机版
解决时间 2021-07-19 22:45

有一供应商供应该零件的关系模式为SP(Sno,Pno,Qty)

Sno:供应商号 Pno:零件号 Qty:零件数量

SELECt Sno

FROM SP SPX

WHERe NOT EXISTS

(SELECt * FROM SP SPY

WHERe SPY.Sno='168' AND NOT EXISTS

(SELECt * FROM SP SPZ

WHERe SPZ.Sno=SPX.Sno AND SPZ.Pno=SPY.Pno

)

)

听说这是:查询到少包含了供应商"168"所供应的全部零件的供应商号的SQL语句。

看了很多遍,看不懂。。是不是两个NOT就把它给NOT成非NOT的呢。。。。

最佳答案

靠,还真是绕人,看了我半天才看懂,不过不太好解释,我试着说说。


首先,楼主的听说是正确的。


其次,我们把第一个not Exists称为不存在,第二个not Exists称为没有,以便区别。


第三,翻译SQL语句,供应商是'168'时,不存在没有这种供应商的零件的集合,也就是只要供应商不等于'168',就一定要有'168'所有的零件。


楼主可以试着从子查询逐渐向外,设想两个相同的表连接查询,再用条件过滤,我表达能力有限。。。

全部回答

查找不存在SPZ.Sno=SPX.Sno AND SPZ.Pno=SPY.Pno AND SPY.Sno='168'这种关系的Sno,

from SPX NOT是取反,但是这里是用两个子查询去找满足“不存在”关系的内容。NOT EXISTS即“不存在”

这条语句你试过能执行吗???

我觉得连执行都有问题。。。

'168' 所供应的零件不存在一个零件这个供应商不供应。 也就是'168'送供应的全部零件这个供应商他全部供应
我要举报
如以上问答信息为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
很多人出现,很多人离开,为什么。
为一个不爱自己的人付出一切 值吗
True or false.(English)
听说寿光要新增一批出租车。有这么回事吗?什
People need to be careful when they shop o
中毒的P3还有用吗?
QQ被盗了该如何找回?
高一地理题,学的好的快进啦。
考摩托车驾驶证可不可以早一个月报名
谁能帮推测下本人的身高?
朋友要学街舞
怎么才能提高科学成绩啊( ⊙ o ⊙ )啊!
不吃早餐会不会发胖?
一直忘不掉那个人怎么办,她也是死要面子活受
一定质量的某种气体,体积不变,压强增大时,它
推荐资讯
东京猫猫里白金是什么身份?
且介亭在哪
空间为什么看不到最近访客
手机腾讯网上的G币有什么用?
DNF哪儿的任务多SP技能书奖?
我的电脑死了怎么办
谁帮我想华夏免费版的游戏名丨神之灬后面在两
为什么QQ空间里的农场在偷菜的时候有的时候显
粉红色外套紫色长毛衣配什么颜色的围巾好看
索爱W550c如何设置上网接入点
江苏省昆山市的火车站有没有卖直达福州的车票
收藏和出售空弹壳与教练弹违法么?
正方形一边上任一点到这个正方形两条对角线的
阴历怎么看 ?