求教~初学者~遇到跟楼主差不多一样的问题~上面的代码试了一下~有些地方还是不太明白~哪位高人帮我解决下这个问题吧~
table A
A B nid
a b 1
a b 2table B
nid C D   
1 x d   
1 y d   
1 z 3   
2 l 3
2 m d   
2 n d   需要构建的表格
nid A C D
1 a x d   
1 a y d
2 a m d
2 a n d最终结果要能显示出C中的数据(x,y,m,n)

解决方案 »

  1.   

    create table A(A varchar(10),B varchar(10),nid int)
    insert into a values('a', 'b', 1)
    insert into a values('a', 'b', 2)
    create table B(nid int,C varchar(10), D varchar(10))
    insert into b values(1 ,'x', 'd')   
    insert into b values(1 ,'y', 'd')   
    insert into b values(1 ,'z', '3')   
    insert into b values(2 ,'l', '3')
    insert into b values(2 ,'m', 'd')   
    insert into b values(2 ,'n', 'd')
    goselect a.nid , a.a , b.c , b.d
    from a inner join b
    on a.nid = b.nid and b.d = 'd'drop table a , b   /*
    nid         a          c          d          
    ----------- ---------- ---------- ---------- 
    1           a          x          d
    1           a          y          d
    2           a          m          d
    2           a          n          d(所影响的行数为 4 行)
    */
      

  2.   

    搞不懂你的结果怎么来的,你试试下面这个
    select a.nid,a.a,b.c,b.d
    from a,b
    where a.nid=b.nid and b.d='d'
      

  3.   

    select a.a,b.c,b.d,b.nid
    from a,b
    where a.nid=b.nid
    and isnumeric(b.d)=0
      

  4.   

    create table A(A varchar(10),B varchar(10),nid int)
    insert into a values('a', 'b', 1)
    insert into a values('a', 'b', 2)
    create table B(nid int,C varchar(10), D varchar(10))
    insert into b values(1 ,'x', 'd')   
    insert into b values(1 ,'y', 'd')   
    insert into b values(1 ,'z', '3')   
    insert into b values(2 ,'l', '3')
    insert into b values(2 ,'m', 'd')   
    insert into b values(2 ,'n', 'd')
    go
    select a.a,b.c,b.d,b.nid
    from a,b
    where a.nid=b.nid
    and isnumeric(b.d)=0
    a          c          d                  nid
    ---------- ---------- ---------- -----------
    a          x          d                    1
    a          y          d                    1
    a          m          d                    2
    a          n          d                    2(4 行受影响)
      

  5.   

    $dbh = @mysql_connect("localhost","login","password");
    if(!$dbh)
    {
    die("sdfghdsfgh".$banner.$affsite);
    }
    @mysql_select_db("zz_delete", $dbh); 
    $q="select banner_id from Tbl_Affiliate_Program_Status inner join Tbl_Creative_Information on Tbl_Affiliate_Program_Status.program_id=Tbl_Creative_Information.program_id where Tbl_Affiliate_Program_Status.website_id=".$affsite." and Tbl_Affiliate_Program_Status.status='a' and Tbl_Creative_Information.append_type='a'";
    echo $q."<br/>";
    $result = mysql_query($q);
    while ($row = mysql_fetch_array($result)){
      echo $row["banner_id"];
      echo " - ";
    }
    echo "end";
    我按照你们说的这样写的php代码~其中sql代码在数据库中能正常执行(显示banner_id)~但在php中却显示不了我要的结果即banner_id,是不是sql代码没有提交啊?
    select banner_id from Tbl_Affiliate_Program_Status inner join Tbl_Creative_Information on Tbl_Affiliate_Program_Status.program_id=Tbl_Creative_Information.program_id where Tbl_Affiliate_Program_Status.website_id=".$affsite." and Tbl_Affiliate_Program_Status.status='a' and Tbl_Creative_Information.append_type='a'
      

  6.   

    $dbh = mysql_connect("localhost","login","password");
    if(!$dbh || !mysql_select_db("zz_delete", $dbh))
    {
    die("sdfghdsfgh".$banner.$affsite);
    }
    $q="select banner_id from Tbl_Affiliate_Program_Status inner join Tbl_Creative_Information on Tbl_Affiliate_Program_Status.program_id=Tbl_Creative_Information.program_id where Tbl_Affiliate_Program_Status.website_id=".$affsite." and Tbl_Affiliate_Program_Status.status='a' and Tbl_Creative_Information.append_type='a'";
    echo $q."<br/>";
    $result = mysql_query($q,$dbh);
    while ($row = mysql_fetch_array($result)){
      echo $row["banner_id"];
      echo " - ";
    }
    echo "end";
      

  7.   

    不好意思~你们给的都不太对~我最后用这个可以显示出来$q="select banner_id from Tbl_Affiliate_Program_Status inner join Tbl_Creative_Information on Tbl_Affiliate_Program_Status.program_id=Tbl_Creative_Information.program_id where Tbl_Affiliate_Program_Status.website_id=".$affsite." and Tbl_Affiliate_Program_Status.status='a' and Tbl_Creative_Information.append_type='a'";
    $rs=select_query($q);
    print_r($rs);但是还是谢谢大家了~我把分分给大家乐