gpt4 book ai didi

mysql - 返回带有特定标签的行

转载 作者:行者123 更新时间:2023-11-28 23:20:14 25 4
gpt4 key购买 nike

我有3张 table

列表列表标签listing_list标签

listing 可以分配多个标签,这些标签存储在 listing_listtag 中,外键指向 listings 和 listtags 表

我在仅选择具有 2 个关联标签的列表时遇到问题。

我有这个问题:

select *
from `listtags`
inner join `listing_listtag` on `listtags`.`id` = `listing_listtag`.`tag_id`
where `listing_listtag`.`listing_id` = 5
and `slug` = "delivery"
AND slug = "wireless-internet"

它什么都不返回。如果我将最后一个 AND 更改为 OR,它现在返回

enter image description here

我希望查询只返回 listing_id 为 5 的一行,我该怎么做?

最佳答案

这是一种方法:

select ?.listing_id
from listtags lt inner join
listing_listtag llt
on lt.id = llt.tag_id
where llt.listing_id = 5 and
?.slug in ('delivery', 'wireless-internet')
group by ?.listing_id
having count(*) = 2;

? 是带有列的表的表别名。

注意:如果数据可以有重复项,请使用count(distinct slug)

关于mysql - 返回带有特定标签的行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42025039/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com