现在我有一个主库,库里的字段都是代码值,然后有相应的代码库,现在我想做个窗体,要将主库里面的代码显示出来,然后再将代码对应的中文名显示出来(如一个字段名为XBM,其取值为1或2,而对应有一个XBK,里面有两个字段XBM,XBMC;两条记录,一条是1 ,男;一条是2 ,女,我要在窗体直接显示是男还是女),大家是不是用LEFT JOIN来做的呢?我的表非常多,至少有十个,这个语句怎么写呢?或是我要实现的目标还有更好的方法呢?

解决方案 »

  1.   

    use baksales_rep
    select baksales_rep.dbo.stationtable.stationid,
    baksales_rep.dbo.stationtable.stationname
    from baksales_rep.dbo.stationtable left join 
    newsales_rep.dbo.citytable on baksales_rep.dbo.stationtable.cityid =newsales_rep.dbo.citytable.cityid
    这是个例子首先是要应用一下要用到的库然后是你要的库的表名.
      

  2.   

    人员表:
    姓名  性别代码
    ==  ====
    张男  1
    李女  2性别代码表:
    性别代码 性别
    ==== ==
    1        男
    2        女
    select 姓名,性别代码 as 性别 from 人员表,性别代码表 
    where 人员表.性别代码=性别代码表.性别代码
      

  3.   

    更正:select 人员表.姓名,性别代码表.性别 from 人员表,性别代码表 
    where 人员表.性别代码=性别代码表.性别代码
      

  4.   

    如果有我十个这样的表是不是都要这样写呢??????
    如果用LEFT JOIN来写又怎么写呢
    今天晚上十点要结帐
      

  5.   

    表多的情况下,先以其中的一些建立一些视图,这样可以简化语句。
    SELECT BCode,tcode,DiaryClass.rddate,DiaryClass.rdzd 
    FROM DiaryClass 
    INNER JOIN  Breed ON DiaryClass.bid = Breed.Bid 
    INNER JOIN team ON DiaryClass.tid = team.tid
      

  6.   

    SELECT BCode,tcode,DiaryClass.rddate,DiaryClass.rdzd 
    FROM DiaryClass,Breed,team
    WEHRE DiaryClass.bid = Breed.Bid 
          AND DiaryClass.tid = team.tid
    这样的语句看起来更简洁.
    =      inner join
    *=     left join 
    =*     right join
    不过后者是更新规范SQL-92
      

  7.   

    楼上的,不行啊!我再把我的意图说明下:
    主库                   XB库       SSM库         KM库
    XM XBM SSM KMM       XBM XBMC   SSM SSMC        KMM  KMMC
    肖 1    01 001        1   男     01  重庆        001  英语
    王 2    02 003        2   女     02  四川        002  政治
    李 1    03 002                   03  湖南        003  数学
    其它记录                         其它记录        其它记录
    我的目的是:要将主库显示在一个表格控件里面,但是主库里面的所有相关的用代码来表示的信息现在都要用相应代码库里的中文名字来显示,而且要将所有主库里面的记录都显示出来,即排队主库里面的标准代码在代码库内不存在时不显示的可能!!!!!!
    大家都来顶顶我啊
      

  8.   

    楼上的大哥
    怎么作视图呢??是用SQL来做吧吗
    我急啊,心都要跳出来了
      

  9.   

    是呀,在SQL的Enterprise Manager里面选择view(视图),然后右键选择new view(新视图)
    然后在视图设计里面添加你要的表,如果你的数据库设计合理的话,那么添加多个表之后会自动产生连接!
      

  10.   

    但是我没有安装SQL SERVER呀大哥
      

  11.   

    LEFT JOIN 直接写的速度似乎比用视图还要快,10 个 LEFT JOIN 不是什么问题,我曾经用过二三十个 LEFT JOIN 的,结果都出来了。