当前位置: 首页 > 面试题库 >

mysql检查数字是否在逗号分隔的列表中

东方骏
2023-03-14
问题内容

我有一张这样的桌子:

UID(int) NUMBERS(blob)
----------------------
1        1,13,15,20
2        3,10,15,20
3        3,15

我想测试3和15是否在称为NUMBERS的Blob中。并可以看到无法使用LIKE %%

仅选择ID为2且具有三个scoulb的行…


问题答案:

这个也可以:

SELECT * FROM table WHERE 3 IN (NUMBERS) AND 15 IN (NUMBERS)

使用IN将查找以逗号分隔的字符串,例如。这两个

WHERE banana IN ('apple', 'banana', 'coconut')
WHERE 3 IN (2,3,6,8,90)

在此页面上找到的信息:



 类似资料:
  • 问题内容: 我有一张桌子有一列。它包含一些用逗号分隔的ID,例如: 我想执行一条select语句,并检查该列中是否存在int。像这样的东西: 我知道这是可能在MySQL做这个,但它可以在SQL Server来完成呢? 我尝试将int转换为char,该char运行以下语句: 但这似乎不支持以逗号分隔的列表,因为它什么也不返回。 问题答案: 您实际上应该重新设计该表,以将这些值从逗号分隔成单独的行中分

  • 问题内容: 我需要运行类似的查询: 但是我希望子选择返回逗号分隔的列表,而不是数据列。这有可能吗?如果可以,怎么办? 问题答案: 您可以使用GROUP_CONCAT执行该操作,例如

  • 问题内容: 我有一个未标准化的表,其中的列包含逗号分隔的列表,该列表是另一个表的外键: 我想将此数据读入不提供过程语言的搜索引擎中。 那么,有没有一种方法, 要么 就这一栏中加入 或 该数据运行查询插入相应的条目到一个新的表?结果数据应如下所示: 如果DBMS支持返回表的函数,但MySQL显然不支持,我可以想到一个解决方案。 问题答案: 在MySQL中,可以通过以下方式实现 现在要获取逗号分隔的v

  • 问题内容: 我需要这个问题的帮助。 在MYSQL表中,我有一个字段: 我需要找到艺术家uid 401的所有记录 我做这个 我所有记录的artist_list字段值仅是“ 401”,但是如果我有11,401,则此查询不匹配。 任何的想法 ? (我无法使用LIKE方法,因为如果艺术家uid为3(匹配30、33、3333)… 问题答案: 短期解决方案 使用FIND_IN_SET函数: 长期解决方案 标准

  • 所以我想看看一个字符串是否存在于多个用逗号分隔的串联列上: 例如,我的表有列、、如下所示: 因此逗号分隔的串联字符串如下所示: 注意每个逗号后面的空格 使用LINQ方法语法,以便能够输入像“st,farm”这样的字符串并获得第一行 很明显,它似乎无法将转换为原始SQL,但我不确定将其更改为什么。