有2个表,一个是个人信息,包括学号,姓名,性别,省份id,等等。 另一个是省份表,只有2项,一项是省份名称,一项是省份id,现在要查找个人信息,要包括省份名称而不是省份id(省份id别人看不懂),由于个人信息表里面的省份id可以为空,所以查找的时候,如果个人信息表里的这个人的省份id为空,则查询结果省份项为空,否则显示省份名称。请问这样的sql语句怎么写?谢谢。

解决方案 »

  1.   

    select 学号,姓名,性别,b.省份名称
    from 个人信息 as a
         left join 省份表 as b on a.省份id=b.省份id
      

  2.   

    select A.*,B.省名称 from 个人信息 A right join 省份信息 B
    on A.省份id=B.省份id
      

  3.   

    JOIN是选择了一个表的所有行吧,我是有条件的,例如学号=111.
      

  4.   

    select 学号,姓名,性别,省份名称
    from 个人信息 a,省份表 b
    where a.省份ID *= b.省份ID
      

  5.   

    select 学号,姓名,性别,b.省份名称
    from 个人信息 as a
    left join 省份表 as b on a.省份id=b.省份id
    where a.学号=111
    这个语句分成3部分
    1..select
    2..a left join b on 
    3..where
    看明白了吗?