作者MLP2006 (MLP)
看板Programming
标题Re: [问题] mysql不支援contains,exist语法的问题
时间Sun Jul 16 20:06:11 2006
※ 引述《gohiei (真是无聊的...)》之铭言:
: ※ 引述《MLP2006 (MLP)》之铭言:
: : 假设
: : 有下面四个Relation Schema
: : 供应商(供应商代号,供应商名称)
: : 计画(计画代号,计画名称)
: : 零件(零件代号,零件名称)
: : 供应(供应商代号,计画代号,零件代号,数量)
: : 要找出有提供零件给每一个计画的供应商
: : 但MySQL又不支援contains,exist语法
: : 请问用MySQL要怎麽下查询?
: : thanks.
: Select * From 供应商
: Where Not Exists(
: Select 1 From 计画 Left Join
^似乎有误,我改成*
: ( Select 计画代号 From 供应 Where 供应.供应商代号 = 供应商.供应商代号 ) a
: On a.计画代号 = 计画.计画代号
: Where isnull(a.计画代号)
: );
: 测试看看吧!
逻辑跟我想的一样
就是先取一个temporary table,找出每一个供应商提供的计画
然後把计画和这个temporary table 做left join
如果结果没有产生Null行
表示这个供应商提供零件给所有的计画
但是答案跑出来是错误的 ><
结果会列出所有的供应商
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 218.167.202.212