我现在有数据库 a  数据库 b 数据库 a 字段  id  bid  aname数据库 b 字段  bid  bname 例如 a 数据库    1   23  pppp
               2   45  ooooo
               3   23,45  eeeeb数据库          23 aaa
               24 bbb
               45 uuuua字段中的bid  就是b 字段中的bid  现在写一个语句 显示显示数据库            a字段中的 id  aname  还有就是 b数据中的 bname

解决方案 »

  1.   

    我要让他显示的是这样 
          如  aid  bname  aname
             1    aaa      pppp
             2    uuuu    ooooo
            3   aaa,uuu    eeee这样的就一句语句应该可以实现吧 
      

  2.   

    那就垮数据库连咯 -____-!!servername.dbname.dbo.tablename
      

  3.   

    楼主描述的数据库应该是数据表,代码实现如下:SELECT a.id AS aid,b.bname,a.aname
    FROM a,b
    WHERE a.bid=b.bid
      

  4.   

    如果考虑a中的bid在b中无的情况,可采用Left JoinSELECT a.id AS aid,b.bname,a.aname
    FROM a LEFT JOIN b
    ON a.bid=b.bid
      

  5.   

    但是上面的 a.bid 和 b.bid 不是一一对应呀, 你要看清楚  a.bid 可能是"23,24,44"三个ID组成的
      

  6.   

    看起来象两个表。你能不能先说清楚是不同的’数据库’,还是同一个数据库中不同的表??因为这是完全不同的操作。无法以不同字段类型的字段做为KEY将两个表连接起来。感觉你对数据库概念非常混乱,希望你能搞清数据库的基本概念,什么是数据库,表,主键和外键及如何关连。
      

  7.   

    select a.id as aid, b.bname, a.aname
    from a
    left join b on a.bid=b.bid
      

  8.   


    SELECT a.id AS aid,b.bname,a.aname
    FROM a LEFT JOIN b
    ON a.bid=b.bid
      

  9.   

    现在是例如 a.bid 是 字段里面的数据是 "23,24"
             那b.bid 是字段里的数据是只有 一个数字
      

  10.   


    在重写说一次 
    例如 a 数据库  id  bid(字符型) aname 
                    1  23          pppp 
                  2  45          ooooo 
                  3  23,45       eeee               4  23,24,25     kkkkkb数据库        bid(整数型)  bname 
                    23          aaa 
                  24          bbb 
                  .           .
                  .           .
                 45         uuuu 
      

  11.   

    无法以不同字段类型的字段做为KEY将两个表连接起来。很希望帮你,但你的表设计的不对,真正应用中不可能有这种设计的表。
      

  12.   

    网速太慢.未能及时回帖.数据库设计不对.像4  23,24,25    kkkkk 这样的记录我认为应该改成这样
    4  23    kkkkk 
    4  24    kkkkk 
    4  25    kkkkk PrimaryKey设置为前两列
      

  13.   

    我改成另一个说法应该比较直关了这个是我的前台  <asp:DataGrid ID="dg1" AutoGenerateColumns="False" CellPadding="0" CellSpacing="0" PageSize="20"  runat="server"  Width="100%" AllowPaging="True" >
                       <HeaderStyle Height="30px" CssClass="topbg" HorizontalAlign="Center" />
                     <ItemStyle BackColor="#F6F6F6" Height="25px" HorizontalAlign="Center" />
                       <Columns>
                           <asp:TemplateColumn HeaderText="归类">
                    <ItemTemplate >

    <%# Eval("classid") %>                   
                    </ItemTemplate>
                          <HeaderStyle CssClass="B" />
                 </asp:TemplateColumn>
          <asp:TemplateColumn HeaderText="品牌名称">
                    <ItemTemplate >

    <%# Eval("PinPaiName")%>
                    </ItemTemplate>
                          <HeaderStyle CssClass="B" />
                 </asp:TemplateColumn>
      
             <asp:TemplateColumn HeaderText="隶属品牌">
                    <ItemTemplate >

    <%# Eval("BigPinPai")%>
                    </ItemTemplate>
                          <HeaderStyle CssClass="B" />
                 </asp:TemplateColumn>
    这个是后台 Exsql.Open();
                string sql = "select ID,pinpainame,classid ,bigpinpai from PinPai";
                DB Chp = new DB();
                DataSet ds = Chp.Db_ds(sql, "BXT_PinPai");
                this.dg1.DataSource = datalistbind(ds);
                this.dg1.DataBind();
    台前出现的<%# Eval("classid") %>  可能说是出现 "23,24,25" 这样子,那我想改成就是  "品牌1,品牌2,品牌3" 的名字
    因为classid这里面的"23,24,25" 对应的就是另一个数库的id 如b 数据库 id   bname
              23   品牌1
              24   品牌2
              25   品牌3
    这个应该一看就知道我的意了, 如要改成我所需要的是改程序,还是能直接改  string sql = "select ID,pinpainame,classid ,bigpinpai from PinPai";
    这个语句就可以实现呢??asp.net刚刚入手