当前位置: 首页 > 面试题库 >

SQL查询以选择属于多个类别的帖子

晏修诚
2023-03-14
问题内容

我正在编写类似于博客软件的Web应用程序。有以下三个表

Posts Table: Post_id,Post_Text
Post_Tags Table: Post_id,Tag_id
Tags Table:Tag_id,Tag_name

我很难概念化SQL查询,该查询将返回在给定集中具有“所有”标签的帖子。


问题答案:

这是关系划分。

使用GROUP BYCOUNT或加倍NOT EXISTS

第一种方法的一个例子是。

SELECT pt.Post_id, p.Post_Text
FROM Post_Tags pt
JOIN Posts p ON p.Post_id = pt.Post_id
WHERE pt.Tag_id IN (1,2,3)
GROUP BY pt.Post_id
HAVING COUNT(DISTINCT pt.Tag_id) = 3


 类似资料:
  • 问题内容: 在hibernate状态下,我可以执行以下操作 现在,如果我想获取int和String怎么办? 现在列表的结构是什么? 问题答案: 这可以。您唯一需要了解的是它将返回如下列表:

  • 问题内容: 在休眠状态下,我可以执行以下操作 现在,如果我想获取int和String怎么办? 现在列表的结构是什么? 问题答案: 这可以。您唯一需要了解的是它将返回如下列表:

  • 问题内容: 我认为这应该很容易,但是却在逃避我。我在帐户和帐户组之间建立了多对多关系。一个帐户可以在零个或多个组中,因此我使用的是标准联接表。 我正在使用MS Access,FWIW。另外,这是针对低带宽的情况,因此代码优化不如简单性/可读性那么重要。 我使用php作为表示层,因此Access的基本结果很好。 至于如何处理多结果情况,我实际上有两件事正在尝试构建。第一列在一个列中列出了所有组,因此

  • 问题内容: 如果某个记录不存在,我需要执行查询以返回下一个(或上一个)记录。例如,考虑下表: 如果7不存在,我想查询ID为7或更大的记录。 我的问题是 SQL可以进行这些类型的查询吗? 在数据库世界中这些查询称为什么? 谢谢! 问题答案: 是的,这是可能的,但是实现将取决于您的RDBMS。 这是在MySQL,PostgreSQL和SQLite中的样子: 在MS SQL Server,Sybase和

  • 类别表的结构: id 标题 家长id 项目表的结构: id 标题 is_active(0) category_id 表结构 表通过一对多关系与category_id字段相关联。1类可以有很多项。 类别表中的两级层次结构。这定义了主要类别和子类别。类别是那些父项id=NULL的记录。和子类别,这些记录中的父项_id=到某个id。 一个项目可以属于主类别(其中parent_id=null)和子类别(子

  • 我正在尝试使用WP REST API从多个帖子类型中检索帖子。通过这样做,我可以从一个帖子类型中获取提要: 现在我想扩展提要以获取和。这只给我最后一个指定的类型: 这给了我一个错误: 我该怎么处理这件事? 谢啦! 编辑:修正语法以匹配我实际拥有的。以下是我在使用此语法<code>时遇到的错误:http://example.com/wp-json/posts?type[]一本书 警告:urlenco