首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >一列上的SQL多个IN语句

一列上的SQL多个IN语句
EN

Stack Overflow用户
提问于 2012-04-25 20:00:24
回答 1查看 331关注 0票数 0

好的,我使用的是WordPress,但这涉及到SQL方面。

我有一个查询,在这个查询中,我需要使用三个不同的类别过滤掉帖子,但它们都是文章中的术语。

例如:

在我的三个类别中,我选择以下内容:(Academia,Webdevelopment) (Fulltime,Parttime) (Earlycareer)

现在,我想要做的是确保当我询问帖子中至少有一个这样的术语。

正确结果:带标记的帖子Academia, Fulltime, Earlycareer

不正确的结果:带有标记Academia, Earlycareer的帖子(没有全职或兼职)

目前,我的查询如下所示:

代码语言:javascript
复制
SELECT * FROM $wpdb->posts WHERE
(
$wpdb->terms.slug IN (list of selected from category 1) AND
$wpdb->terms.slug IN (list of selected from category 2) AND
$wpdb->terms.slug IN (list of selected from category 3)
)
AND $wpdb->term_taxonomy.taxonomy = 'jobtype' AND .......

当使用此查询时,当我跨不同类别进行选择时,它不会返回任何结果(也就是说,我可以从类别1中选择4件东西,并且它有结果,但是我不能从类别2或3中选择任何东西。反之亦然)

我不确定这是否与在同一专栏中多次使用IN有关。

提前感谢您的帮助!

EN

回答 1

Stack Overflow用户

发布于 2012-04-25 20:22:27

你的询问似乎是正确的。在SQL中,对于同一列使用in没有任何限制。

但是,请确保list of selected from category 1/2/3查询中没有空值。即使这些列表中的单个空值也会由于整个“WHERE”条件而给出NULL,因此您将一无所获。

如果这没有帮助,那肯定是WordPress问题。

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

https://stackoverflow.com/questions/10322873

复制
相关文章

相似问题

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