2

我正在尝试加入两张桌子,但我被卡住了。这两个表有一些同名的行。

table1: shop 
rows: sid, typeid, name, email_id, url, logo, app_link, phone, status, username, password

table2: shopnews
rows: nid, typeid, sid, url, logo, start_date, end_date, add_date, name, short_detail, status, updated_on

我要做的是从商店新闻中获取 *,从商店中获取名称和 url,其中两个表中的 sid 相同。

我真的不知道我在这里做什么,但这是我的代码的一部分:

  mysql_select_db($db, $con);
  $result = mysql_query("SELECT sid AS ssid, name AS ssname, url AS ssurl, logo AS sslogo, status AS sstatus FROM shop INNER JOIN shopnews ON shop.ssid = shopnews.sid"); 

  while($row = mysql_fetch_array($result))
  {
      $nid=$row['nid'];
      $typeid=$row['typeid'];
      $sid=$row['sid'];
      $shopname=$row['ssname'];
      $shopurl=$row['ssurl'];
      $url=$row['url'];
      $logo=$row['logo'];
      $start_date=$row['start_date'];
      $end_date=$row['end_date'];
      $add_date=$row['add_date'];
      $name=$row['name'];
      $short_detail=$row['short_detail'];
      $shopstatus=$row['sstatus'];
      $status=$row['status'];
  }

警告:mysql_fetch_array() 期望参数 1 是资源,给定的布尔值

有人可以告诉我我做错了什么吗?

4

1 回答 1

0

试试这个:

SELECT sn.*, s.name ssname, s.url surl
FROM shop s INNER JOIN shopnews sn ON s.sid = sn.sid
于 2012-12-21T11:14:45.990 回答