多表查询需要两个表之间有关联,可以参考下面的教程:
http://www.pconline.com.cn/pcedu/empolder/db/10111/4876.html

解决方案 »

  1.   

    select * from mp3, wma where mp3.SongName like '%$songname%'or select * from mp3, wma where wma.SongName like '%$songname%'
      

  2.   

    两表有同名字段,
    也请select语句注意修改为类:select mp3.SongName as mp3name,
           wma.SongName as wmaname....
    一类, 否则就算sql可以正常执行, 也可能使返回来数组中列名无法确定而出错
      

  3.   

    yes,同意楼上的说法,应该在where后面加mp2或wma
      

  4.   

    select * from mp3, wma where wma.SongName like '%$songname%'
    可我这样做了程序根本执行不下去了啊
      

  5.   

    select * from mp3 t1, wma t2 where t2.SongName like '%$songname%'
      

  6.   

    select * from mp3 AS t1, wma AS t2 where t2.SongName like '%$songname%'t1,t2是别名,如果SongName在两个表中都存在,就要明确指出,如用t1.SongName或t2.SongName
      

  7.   

    to:myblessu(寒飞) SongName是在2个表里都存在,那代码该怎么写呢,我写了几句都不对啊
      

  8.   

    SELECT * FROM table1 LEFT JOIN table2 USING (id);
    //table1第一个数据库表,table2第二个数据库表,
    //关连同一个字段id
      

  9.   

    $strSQL="SELECT * FROM mp3 LEFT JOIN wma USING (songname) where SongName like '%$songname%'";是这样吗?
      

  10.   

    $strSQL="select * from mp3,wma where SongName like '%". $songname% ."'";
      

  11.   

    $strSQL="select * from mp3,wma where SongName like '%". $songname ."%'";
      

  12.   

    to:leeeel(三角比三星差?)执行也出错:(
      

  13.   

    select mp3.SongName as mp3name,
           wma.SongName as wmaname
    form mp3, wma
    where mp3.SongName like '%$songname%'
         or wma.SongName like '%$songname%'建议先在sql里调试, 因为在php里出错的原因比较多
      

  14.   

    抛开语句的执行问题,你跟本就可以把mp3和wma两张表合在一起,因为大部分字段都是一样的,是吧:)