mySqli ....内联?

时间:2013-01-18 20:41:08

标签: php mysqli

我有两张桌子..照片和画廊,结构如下:
-----------------------------------------------
表:照片
-----------------------------------------------
--photo -----所有者 - 画廊 - 订单
123.jpg -------- 23 -------- 28 ------ 1
234.jpg -------- 23 -------- 28 ------ 2
345.jpg -------- 23 -------- 29 ------ 1
456.jpg -------- 23 -------- 29 ------ 2
567.jpg -------- 23 -------- 30 ------ 1

----------------------------------------------- -
表:画廊
-----------------------------------------------
id --galleryname ----所有者----访问 -
28 - 画廊1 ---------- 23 -------私人 -
29 - 画廊2 ---------- 23 -------公众 -
30 - 画廊3 ---------- 23 -------公众 -

两张表之间的关系是photos.gallery = galleries.id

我希望获得具有特定访问类型(私有)的每个图库的列表(使用while循环),并从照片表中获取订单= 1的每个图库的photos.photo。

我应该使用内连接,左连接还是什么?我尝试了以下,它没有用。有人可以帮我理解我做错了吗?

if ($stmt = $mysqli->prepare("SELECT galleries.id, galleries.galleryname, photos.photo FROM galleries INNER JOIN photos ON galleries.id=photos.gallery WHERE galleries.access = 'private' AND galleries.owner = '23' AND photos.count = '1'")) 
{     
  $stmt->execute();     
  $stmt->bind_result($private_gal_id,$private_gal_name,$private_gal_photo);
  while ($stmt->fetch()) 
    {      
      echo "The results: $private_gal_id - $private_gal_name - $private_gal_photo";
    }
  $stmt->close();;
}

1 个答案:

答案 0 :(得分:2)

而不是:

AND photos.count = '1'"))

在查询结尾处

应该是:

AND photos.order = '1'"))