EXISTS 
看下联机说明
是判断是否成立的

解决方案 »

  1.   


    EXISTS = 只要存在......
      

  2.   

    第一句语句的含义是:从publishers表的第一条记录开始进行扫描,对他的每条记录如果在titles表中能够找到ID号与其相同的则返回出版商的名字但在找到第一条记录后既停止查找开始扫描下条记录
      

  3.   

    1.
    SELECT DISTINCT pub_name
    FROM publishers
    WHERE EXISTS
       (SELECT *
       FROM titles
       WHERE pub_id = publishers.pub_id)--其实就是找出出过书的出版商的名称;
    等价于:
    SELECT distinct pub_name
    FROM publishers
    WHERE pub_id IN
       (SELECT pub_id
       FROM titles)
    2.
    WHERE EXISTS (SELECT NULL) 返回为真
      

  4.   

    to:efpsy(efpsy) ( )
     好像解释是头是路甘, 但是如果按照你的意思是分析第二句, 一点都解释不通的.
      

  5.   

    第二句的意思就是
    SELECT DISTINCT pub_name
    FROM publishers
    后面的where子句不起限制作用
      

  6.   

    第一句在语义在可表达为:
    SELECT DISTINCT pub_name
    FROM publishers
    WHERE (SELECT COUNT(*)
       FROM titles
       WHERE pub_id = publishers.pub_id) > 0理解一点没有?