default_albums
表用于存储相册数据。default_hottest_categories
表用于存储类别
数据default_album_hc_connect
表用于将default_hottest_categories
表与default_albums
表连接起来
表我需要能够显示is_hottest
类别的所有相册。 is_hottest
列位于default_hottest_categories
表中。以下代码是我到目前为止的代码:
$q1 = $this->db->query("SELECT * FROM default_albums a, default_hottest_categories d INNER JOIN default_album_hc_connect dc
ON d.id = dc.hottest_categories_id INNER JOIN default_albums ON dc.albums_id = default_albums.album_id
WHERE d.is_hottest = 'Yes'");
我真的不知道这是否正确。所以,如果你能帮助我,我会非常感激。
答案 0 :(得分:1)
这应该有效。您的FROM
子句中有一个额外的default_albums表实例。我删除了。此外,您通常希望将所有表格连接在一起。你在那里使用的逗号用于CROSS JOINS,但在这种情况下不经常使用,也不需要。另外,我建议您只在SELECT
子句中使用所需的字段。
SELECT *
FROM default_albums a
INNER JOIN default_album_hc_connect dc
ON a.albums_id = dc.album_id
INNER JOIN default_hottest_categories d
ON dc.hottest_categories_id = d.id
WHERE d.is_hottest = 'Yes'"