MySQL 子查询 练习题

测试数据表:

suppliers 表

  s_id  s_name          s_city     s_zip   s_call  
------  --------------  ---------  ------  --------
   101  FastFruit Inc.  Tianjin    300000  48075   
   102  LT Supplies     Chongqing  400000  44333   
   103  ACME            Shanghai   200000  90046   
   104  FNK Inc.        Zhongshan  528437  11111   
   105  Good Set        Taiyuang   030000  22222   
   106  Just Eat Ours   Beijing    010     45678   
   107  DK Inc.         Zhengzhou  450000  33332   

fruits 表

f_id      s_id  f_name      f_price  
------  ------  ----------  ---------
a1         101  apple       5.20     
a2         103  apricot     2.20     
b1         101  blackberry  10.20    
b2         104  berry       7.60     
b5         107  xxxx        3.60     
bs1        102  orange      11.20    
bs2        105  melon       8.20     
c0         101  cherry      3.20     
l2         104  lemon       6.40     
m1         106  mango       15.60    
m2         105  xbabay      2.60     
m3         105  xxtt        11.60    
o2         103  coconut     9.20     
t1         102  banana      10.30    
t2         102  grape       5.30     
t4         107  xbababa     3.60   

第一条语句,不太懂,到底是返回了查询结果的信息表,还是 ture
推测点:SELECT * FROM suppliers WHERE fruits.s_id = suppliers.s_id AND fruits.s_id=107` 语句中,fruits与suppliers形成了 内连接

SELECT * FROM fruits
WHERE EXISTS
(SELECT * FROM suppliers 
WHERE fruits.`s_id` = suppliers.`s_id` AND  fruits.s_id=107);
f_id      s_id  f_name   f_price  
------  ------  -------  ---------
b5         107  xxxx     3.60     
t4         107  xbababa  3.60     

下面为 两个表内连接 的查询结果 :

SELECT * FROM suppliers ,fruits
WHERE fruits.`s_id` = suppliers.`s_id` AND  fruits.s_id=107
  s_id  s_name   s_city     s_zip   s_call  f_id      s_id  f_name   f_price  
------  -------  ---------  ------  ------  ------  ------  -------  ---------
   107  DK Inc.  Zhengzhou  450000  33332   b5         107  xxxx     3.60     
   107  DK Inc.  Zhengzhou  450000  33332   t4         107  xbababa  3.60     

第二条语句,查询之后返回ture,然后查询出了 fruits表的全部数据
(推测点: SELECT * FROM suppliers WHERE s_id=107 语句中 suppliers表与上层的select中 fruits没有连接条件

SELECT * FROM fruits
WHERE EXISTS
(SELECT * FROM suppliers WHERE s_id=107);
f_id      s_id  f_name      f_price  
------  ------  ----------  ---------
a1         101  apple       5.20     
a2         103  apricot     2.20     
b1         101  blackberry  10.20    
b2         104  berry       7.60     
b5         107  xxxx        3.60     
bs1        102  orange      11.20    
bs2        105  melon       8.20     
c0         101  cherry      3.20     
l2         104  lemon       6.40     
m1         106  mango       15.60    
m2         105  xbabay      2.60     
m3         105  xxtt        11.60    
o2         103  coconut     9.20     
t1         102  banana      10.30    
t2         102  grape       5.30     
t4         107  xbababa     3.60     
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值