php - 从表中获取精确匹配记录

标签 php mysql

我有一个表,其中有两列 Trial_id 和 Category_id

我附上图片,以便它变得更清晰。

我想要有category_id 260,2880的Trial_id记录。

好吧,我可以使用“in”语句运行查询

某事“从Trial_category中选择*,其中category_id IN (260, 2880)”enter image description here

它给出的 Trial_id 为 73,213,但 73 还有很多其他类别。所以这不应该显示在结果中。

结果应该只包含213 Trial_id,或者即使我在213中添加另一个category_id,那么213也不应该显示。

谢谢

最佳答案

如果我没猜错的话,您只需要 Trial_id,其中仅包含 260 或 2880(两者?)

SELECT * 
   FROM trial_category 
   WHERE category_id IN (260, 2880)
   and trial_id NOT IN (select trial_id 
                         from trial_category 
                         where category_id NOT IN (260, 2880))

关于php - 从表中获取精确匹配记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17483556/

相关文章:

php - 比较 2 列以确定未匹配的数字

mysql - 在MySQL中,有没有某种方法可以用数字列表计算平均值?

php - datatables.net 列对另一列进行排序

php - 用laravel迁移一张表,错误 "MySQL server has gone away"和 "Packets out of order"

php - 如何使用php在mysql中为一个id上传多个文件?

php - 调整 SQL 查询。如何将 IN 更改为更快的内容

php - 如果他使用 var 来解释 PHP OOP,这是否是旧的解释?

php - 从 STDIN 读取不同行上的变量的简单方法?

PHP函数创建表,如何添加数据库ID作为URL参数?

mysql - Bookshelf.js 使用 rand() 随机排序项目