1,(1)exists的用法,是不是exists只能用在连接的查询中呢,即exists后()中用连接查询,不能用子查询,前提是多表连接。
(2)如求用一条SQL语句 查询出每门课都大于80分的学生姓名
name   kecheng   fenshu 
张三     语文       81
张三     数学       75
李四     语文       76
李四     数学       90
王五     语文       81
王五     数学       100
王五     英语       90
用这样的可以么。select distinct name from table where not exists (select distinct name from table 
                                                                 where fenshu<=80)
与where name not in()有什么不同么?
2。like N'立%'这句话中N是什么意思。可不可以不用写。
3。如把还书期限延长一周,该如何写这样的语句呢?
4。如同时选了数学和英语的同学,有的上用 kecheng in('数学','英语'),但是 我看到的是或,数学或英语才用in,迷糊中,请教一下哪个是正确的。如过同时的不对的话,应该如何来同时的呢?
5。top 的用法?
6。比较区分下连接查询和子查询的相同和不同的地方。如何的区分?

解决方案 »

  1.   

    select * from table t
    where not exists (select 1 from table where name=t.name and fenshu <=80) --楼主改为这样写go

    select * from table where name not in(select name from table where fenshu <=80)
      

  2.   

    3。如把还书期限延长一周,该如何写这样的语句呢?
    update tablename set 还书日期=还书桌日期+7
    5。top 的用法?
    例 select top 5* from tablename where condition
    返回符合condition的前5条纪录
    4。如同时选了数学和英语的同学,有的上用 kecheng in( '数学 ', '英语 '),但是 我看到的是或,数学或英语才用in,迷糊中,请教一下哪个是正确的。如过同时的不对的话,应该如何来同时的呢? 
    个人认为 应该用and吧,in应该是或的意思