首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >查询2表联接

查询2表联接
EN

Stack Overflow用户
提问于 2015-06-12 20:30:39
回答 3查看 45关注 0票数 0

我想得到所有类型与ID_GENRE = 8相当的电影。这是我正在做的查询:

http://l4c.me/fullsize/2-tablas-1434140362.png

代码语言:javascript
复制
$query_GetSimilar = sprintf("SELECT * FROM z_movie,z_movie_genre ORDER BY z_movie.visits DESC WHERE z_movie_genre.id_genre = 8 LIMIT 18");
$GetSimilar = mysql_query($query_GetSimilar, conect::dbconect()) or die(mysql_error());
$row_GetSimilar = mysql_fetch_assoc($GetSimilar);
$totalRows_GetSimilar = mysql_num_rows($GetSimilar);

但是我跳过了下一个错误

您的SQL语法有错误;请检查与您的MySQL服务器版本对应的手册,以获得在第1行“z_movie_genre.id_genre =8限制为18”附近使用的正确语法。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2015-06-15 02:21:35

注意:

  • WHERE应该是ORDER BY之前的第一个
  • 您可以使用INNER JOIN获得两个连接表,假设它们具有连接id/列。

例如,z_moviez_movie_genre表都有要相互连接的列id_genre,您可以尝试如下:

代码语言:javascript
复制
$query_GetSimilar = sprintf("SELECT * FROM z_movie
                               INNER JOIN z_movie_genre ON z_movie.id_genre = z_movie_genre.id_genre
                               WHERE z_movie_genre.id_genre = 8
                               ORDER BY z_movie.visits DESC
                               LIMIT 18");
票数 0
EN

Stack Overflow用户

发布于 2015-06-12 20:46:16

做一个简单的搜索,看看你是否可以在“哪里”之前输入“order”。

票数 0
EN

Stack Overflow用户

发布于 2015-06-12 22:08:04

好的,现在我的查询是:

代码语言:javascript
复制
$query_GetSimilar = sprintf("SELECT * FROM z_movie,z_movie_genre WHERE z_movie_genre.id_genre=8  ORDER BY z_movie.visits DESC LIMIT 18");
$GetSimilar = mysql_query($query_GetSimilar, conect::dbconect()) or die(mysql_error());
$row_GetSimilar = mysql_fetch_assoc($GetSimilar);
$totalRows_GetSimilar = mysql_num_rows($GetSimilar);

但我没有预期的结果

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30811713

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档