mysql - 使用 MySQL 查找链接表中没有任何条目的项目

标签 mysql kohana-3 kohana-orm

我有一个 items 表和一个 tags 表,它们通过 user_tags 表链接。我有一个查找所有带有特定标签的项目的查询:

self::factory('item')
    ->join('user_tags', 'INNER')->on('items.id', '=', 'user_tags.item_id')
    ->join('tags', 'INNER')->on('user_tags.tag_id', '=', 'tags.id')
    ->where('tags.title', 'IN', $array_of_tags);

或没有 kohana orm:

SELECT items.*
FROM items
INNER JOIN user_tags ON items.id = user_tags.item_id
INNER JOIN tags ON user_tags.tag_id = tags.id
WHERE tags.title IN ($array_of_tags);

我想找到所有没有关联标签的项目。我该怎么做?

最佳答案

只需添加另一个where条件

SELECT 
    items.*
FROM items
LEFT JOIN user_tags ON items.id = user_tags.item_id
LEFT JOIN tags ON user_tags.tag_id = tags.id
WHERE tags.title IN ($array_of_tags)
AND user_tags.tag_id IS NULL;

关于mysql - 使用 MySQL 查找链接表中没有任何条目的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14445439/

相关文章:

mysql - 未调用存储过程 SQLWARNING 退出处理程序

php - php-fpm 的负载平均/性能问题

kohana-3 - 将 Auth 与 ORM 驱动程序 kohana 3.3.0 一起使用时出错

php - 添加关系,处理重复条目 - KOHANA 3.3

mysql - ORM中如何进行子查询?

orm - Kohana 中的一对多关系

php - 如何创建谷歌阅读器?

Mysql - 坚持所有行的单行值?

php - Kohana 框架 : 'HTTP_Exception_404 [ 404 ]: The requested URL welcome/index was not found on this server.'