table 性别  姓名
男   XXXX
女   yyyy
男   zzzx
女   mmmm姓名  年龄
xxxx   23
yyyy   24
zzzz   25
mmmm   26如何得出一下表
姓名  性别  年龄
xxxx   男     23
zzzz   男     25也就是说先从一个表中取出符合条件的纪律,然后从另一个表中取出相对应的记录。

解决方案 »

  1.   

    看看对你有没有帮助?sql语句的联合查询(join 用法) 
    student 
    no,name,classid,
    1, zdy,2,
    2,huz,2,
    3,yxx,2,
    4,sss,1,
    class
    classid,classname,
    2,y2002,
    3,y2003,
    1 .select *  from student , class where student.classid=class.classid
    no,name,classid,classid,classname,
    1,zdy,2,2,y2002,
    2,huz,2,2,y2002,
    3,yxx,2,2,y2002,2.select *  from student left join class on student.classid=class.classid
    no,name,classid,classid,classname,
    1,zdy,2,2,y2002,
    2,huz,2,2,y2002,
    3,yxx,2,2,y2002,
    4,sss,1, ,  ,3.select *  from student inner join class on student.classid=class.classid
    no,name,classid,classid,classname,
    1,zdy,2,2,y2002,
    2,huz,2,2,y2002,
    3,yxx,2,2,y2002,
    结果同1
    4.select *  from student right join class on student.classid=class.classid
    no,name,classid,classid,classname,
    1,zdy,2,2,y2002,
    2,huz,2,2,y2002,
    3,yxx,2,2,y2002,
      ,    ,  , 3,y2003,
      

  2.   

    select table1.姓名,table1.性别,table2.年龄 form table1,table2 where table1.姓名=table2.姓名
      

  3.   

    感谢楼上2位的回答,我需要的语句是 先从 表格1中找出所有男性数据,然后去匹配表格2中的数据我以前的语句是   select 表格1.性别,表格1.姓名,表格2.年龄 from 表格1,表格2 where 表格2.姓名 in(select 姓名 from 表格1 where 性别=男)但是只能取出一条记录不知道什么原因???