根据另一个表中的关键字从一个表中选择行

基督教

我在数据库表中存储了几个接口元素,用户可以通过输入关键字(存储在另一个表中)来过滤这些元素:

表格按钮:

ID   Name
 1   Button1
 2   Button2
 3   Button3

表格关键字:

ButtonID  Keyword 
       1  Garden
       2  House
       3  Garden
       3  House

如果用户输入Garden,则数据库返回Button1 and Button3

如果用户输入House,则数据库返回Button2 and Button3

如果用户输入Garden AND House,则db仅返回Button3

最后一个是问题,我设法将这个查询放在一起:

SELECT T.ID, T.Name
           , T.Type
           , T.Description
           , T.Action
           , T.Image 
FROM Tiles T 
JOIN Keywords K 
ON T.ID=K.TileID 
WHERE K.Keyword IN ('House', 'Garden')

不幸的是,此查询返回所有三个带有提供的关键字中的任何一个的按钮。但是我只想要包含所有提供的关键字的元素是Button3该查询应如何实现呢?

非常感谢 :)

罗曼·佩卡(Roman Pekar)
declare @params table (Keyword varchar(6) primary key)

insert into @params
select 'House' union all
select 'Garden'

select
    b.Name
from Keywords as k
    inner join Buttons as b on b.ID = k.ButtonID
where k.Keyword in (select Keyword from @params)
group by b.Name
having count(*) = (select count(*) from @params)

sql fiddle demo

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

根据另一个表中的选定行从一个表中选择数据

来自分类Dev

如何在1个表中选择包含来自SQL中另一个表的关键字的行?

来自分类Dev

如何在1个表中选择包含来自SQL中另一个表的关键字的行?

来自分类Dev

根据另一个表的频率从一个表中选择列?

来自分类Dev

根据另一个表中的引用值从一个表中选择值

来自分类Dev

根据另一个表中的数据从表中选择行

来自分类Dev

根据另一个表中的数据从表中选择行

来自分类Dev

MySQL项目设计-根据另一个选择查询中的行有条件地从一个表中选择

来自分类Dev

从一个表中选择另一个不存在的表

来自分类Dev

从一个表中选择,从另一个表中计数

来自分类Dev

根据另一个表从一个表中选择唯一行,然后对其进行排序

来自分类Dev

从一个表中选择行,其中在MYSQL中从另一个表中选择值和顺序

来自分类Dev

如何使用SQL中的包含从另一个表中搜索关键字

来自分类Dev

MySQL:如何从一个表中选择从另一个表获取的每个间隔之间的行

来自分类Dev

SQL查询从一个表中选择不在另一表中的行

来自分类Dev

从一个表中选择记录,而另一个表中没有两列

来自分类常见问题

从一个表中选择用户标识,然后在另一个表中更新

来自分类Dev

如何从一个表中选择数据并插入另一个表中?

来自分类Dev

如何从一个表中选择另一个表中没有外键的记录

来自分类Dev

SQL查询以基于另一个表中的列值从一个表中选择

来自分类Dev

当能力在另一个表中时,如何从一个表中选择数据?

来自分类Dev

如何从一个表中选择数据并插入另一个表中?

来自分类Dev

SQL查询-从一个表中选择全部,在另一个表中匹配记录

来自分类Dev

从一个表中选择所有记录并从另一个表中匹配记录

来自分类Dev

关键字分析:返回描述列包含一个或多个单词的行,这些单词位于另一个表的另一列中

来自分类Dev

从一个或另一个表中选择数据的最佳方法

来自分类Dev

从一个表中选择与SQL的另一个表中的相同值相关联的唯一行对

来自分类Dev

根据保存在另一个表中的关系从表中选择

来自分类Dev

PHP MySQL从一个表中选择ID,从另一个表中选择照片

Related 相关文章

  1. 1

    根据另一个表中的选定行从一个表中选择数据

  2. 2

    如何在1个表中选择包含来自SQL中另一个表的关键字的行?

  3. 3

    如何在1个表中选择包含来自SQL中另一个表的关键字的行?

  4. 4

    根据另一个表的频率从一个表中选择列?

  5. 5

    根据另一个表中的引用值从一个表中选择值

  6. 6

    根据另一个表中的数据从表中选择行

  7. 7

    根据另一个表中的数据从表中选择行

  8. 8

    MySQL项目设计-根据另一个选择查询中的行有条件地从一个表中选择

  9. 9

    从一个表中选择另一个不存在的表

  10. 10

    从一个表中选择,从另一个表中计数

  11. 11

    根据另一个表从一个表中选择唯一行,然后对其进行排序

  12. 12

    从一个表中选择行,其中在MYSQL中从另一个表中选择值和顺序

  13. 13

    如何使用SQL中的包含从另一个表中搜索关键字

  14. 14

    MySQL:如何从一个表中选择从另一个表获取的每个间隔之间的行

  15. 15

    SQL查询从一个表中选择不在另一表中的行

  16. 16

    从一个表中选择记录,而另一个表中没有两列

  17. 17

    从一个表中选择用户标识,然后在另一个表中更新

  18. 18

    如何从一个表中选择数据并插入另一个表中?

  19. 19

    如何从一个表中选择另一个表中没有外键的记录

  20. 20

    SQL查询以基于另一个表中的列值从一个表中选择

  21. 21

    当能力在另一个表中时,如何从一个表中选择数据?

  22. 22

    如何从一个表中选择数据并插入另一个表中?

  23. 23

    SQL查询-从一个表中选择全部,在另一个表中匹配记录

  24. 24

    从一个表中选择所有记录并从另一个表中匹配记录

  25. 25

    关键字分析:返回描述列包含一个或多个单词的行,这些单词位于另一个表的另一列中

  26. 26

    从一个或另一个表中选择数据的最佳方法

  27. 27

    从一个表中选择与SQL的另一个表中的相同值相关联的唯一行对

  28. 28

    根据保存在另一个表中的关系从表中选择

  29. 29

    PHP MySQL从一个表中选择ID,从另一个表中选择照片

热门标签

归档