gpt4 book ai didi

SQL LIKE 运算符不适用于逗号分隔列表

转载 作者:行者123 更新时间:2023-12-02 05:25:44 25 4
gpt4 key购买 nike

这是我的数据:

Column:
8
7,8
8,9,18
6,8,9
10,18
27,28

我只想要包含 8 的行。当我这样做时:

Select * 
from table
where column like '%8%'

我得到了以上所有内容,因为它们包含一个 8。当我这样做时:

Select * 
from table
where column like '%8%'
and column not like '%_8%'

我得到:

8
8,9,18

我没有得到 6,8,9,但我需要,因为它里面有 8

任何人都可以帮助获得正确的结果吗?

最佳答案

我建议如下:

SELECT *
FROM TABLE
WHERE column LIKE '%,8,%' OR column LIKE '%,8' OR column LIKE '8,%' OR Column='8';

但我必须说像这样存储数据的效率非常低,例如,索引在这里无济于事,您应该考虑改变存储数据的方式,除非您有充分的理由保持这种状态。

编辑:

我强烈建议您查看问题评论中@Bill Karwin 的链接:

Is storing a delimited list in a database column really that bad?

关于SQL LIKE 运算符不适用于逗号分隔列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17559051/

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