当前位置: 首页 > 知识库问答 >
问题:

仅使用所选选项进行MySQL搜索

轩辕天佑
2023-03-14

我有三个表moviescategoriesmovie_categories

表:电影#title---------1电影-1 2电影-2 3电视-1

表:类别#标题--------1恐怖2喜剧3(电视)4科幻

表:Movie_Categories#movie_id category_id---------------1 1 1 2 2 4 3 3 3 4 3 4

我正在尝试提取只有movie_categories.category_id:3&4的记录

SELECT `movies`.`title` FROM `movie_categories`
INNER JOIN `movies` ON `movies`.`id` = `movie_categories`.`movie_id`
WHERE `category_id` = 3
AND `category_id` = 4

如果我使用而不是,那么它将显示具有所选类别之一的所有记录。

我做错了什么?

共有1个答案

尉迟国发
2023-03-14

34不能在单行中有效。因此,您的where子句过滤掉所有行。

您需要不同行中的值,因此需要聚合--然后在聚合之后进行筛选:

SELECT mc.movid_id
FROM movie_categories mc
WHERE mc.category_id IN (3, 4)
GROUP BY mc.movie_id
HAVING COUNT(*) = 2;   -- both rows are present

请注意,您的查询还引用了title,但它不在movie_categories数据库中。您需要join(当然,还有其他方法,但这是最常见的)来从movie_id获取标题。我会让你继续努力的。

 类似资料:
  • 我有选择权。如何设置为var选择自动选择? 例如,我手动选择选项1,它自动 <代码> 编辑我发现了。

  • 问题内容: 好的,我知道这已经得到了回答(使用Ajax或JavaScript选择下拉列表选项后,在同一页面上执行PHP脚本),但是对于以前从未使用过AJAX的人来说,答案并不是很有帮助。如果有人从下拉列表中选择一个选项,如何运行类似创建的查询? 问题答案: 首先,您必须使用Javascript触发AJAX请求。但是,我将通过使用jQuery(一个Javascript库)指导您。 您的HTML: 之

  • 我试图改变JTable的选择行为,使其能够在不使用CTRL修饰符的情况下向选择添加和移除行。方法: 似乎正是我所要寻找的,尤其是这种情况: 是我想做的。问题是我做不到。也许我遗漏了一些关于内部JTable工作的信息,但下面是我的代码: 这似乎是在不务正业。有谁能告诉我问题出在哪里吗? 多谢了。

  • 问题内容: 我想使用第二列(art_count)仅显示那些包含总art_count的X%的行。 我的资料: 到目前为止我的查询: 使用SUM进行了尝试,但未成功。 问题答案: 您需要为插入一个值

  • 本文向大家介绍MySQL查询以使用AND OR进行选择,包括了MySQL查询以使用AND OR进行选择的使用技巧和注意事项,需要的朋友参考一下 让我们首先创建一个表- 使用插入命令在表中插入一些记录- 使用select语句显示表中的所有记录- 这将产生以下输出- 以下是使用AND OR执行选择的查询- 这将产生以下输出-

  • 问题内容: 好吧,标题说明了一切。我正在做的是创建一个特色产品模块。使用JSON填充尺寸的下拉列表,并且我使用把手来呈现html。我无法控制JSON文件。我尝试通过选项标签中的实际文本对选项值进行排序,但后来我意识到选项值是错误的。因此,现在我尝试按其值属性对选项进行排序,但尚未弄清楚。我正在尝试做这样的事情: 这是HTML: 问题答案: 在这里,您可以找到一个演示并将结果与​​原始结果进行比较: