学生表
学号 姓名 性别 等级
0001 张A  男   优秀
0002 张B  男   良好
0003 张C  男   优秀
0004 张D  男   一般
0005 张F  男   良好
0006 张G  男   优秀
0007 张H  男   一般
0008 张J  男   优秀等级类别表
id   名称
1   优秀
2   良好
3   一般要求得出如下记录
学号 姓名 性别 等级
0001 张A  男   优秀
0003 张C  男   优秀
0006 张G  男   优秀
0008 张J  男   优秀
0002 张B  男   良好
0005 张F  男   良好
0004 张D  男   一般
0007 张H  男   一般是按等级类别表的id来排序的,求高手帮忙

解决方案 »

  1.   

    下面的语句可以:
    select 学生表.* 
    from 学生表,等级类别表
    where 学生表.等级=等级类别表.名称
    order by 等级类别表.等级
    我已经通过调试了的.
      

  2.   

    select 学生表.学号,学生表.姓名,学生表.性别,学生表.等级 from 学生表 inner join 等级类别表 
     on 学生表.等级=等级类别表.名称 orderby 等级类别表.id
      

  3.   

    楼上正解
    select 学生表.学号,学生表.姓名,学生表.性别,学生表.等级
     from 学生表
     inner join 等级类别表 
    on 学生表.等级=等级类别表.名称 
    order by 等级类别表.id
      

  4.   


    select 学生表.* 
    from 学生表,等级类别表 
    where 学生表.等级=等级类别表.名称 
    order by 等级类别表.id
      

  5.   

    select 学生表.学号,学生表.姓名,学生表.性别,学生表.等级 
    from 学生表 
    inner join 等级类别表 
    on 学生表.等级=等级类别表.名称 
    order by 等级类别表.id;
      

  6.   

    select 学生表.* 
    from 学生表,等级类别表 
    where 学生表.等级=等级类别表.名称 
    order by 等级类别表.id
      

  7.   

    我习惯用left join,这里效果是一样的
    原来这种情况还可以用inner join