gpt4 book ai didi

mysql - 具有 "list"条目的 SQL 表与每个条目一行的 SQL 表

转载 作者:行者123 更新时间:2023-11-29 01:51:28 24 4
gpt4 key购买 nike

我有一个 Sqlite 表,其中每一行都是以下形式:

value, "a,b,c,d,e,f,g,h,i,j", value3, value4

我的查询使用 LIKE 查找值对 %b%。取而代之的是每行都是一个排列的表,在查询时间方面是否更有效:

value, a, value3, value4
...
value, j, value3, value4

所以我的查询现在是 value,b 这次使用 = 运算符。

请注意,我感兴趣的用例目前有大约 10,000 行,其中每个“列表”元素平均有 8 个条目。我标记了 SqliteMySQL,因为我对使用 MySQLSqlite 的数据库都有类似的问题。

最佳答案

Where my queries look for a pairing of value, %b% using LIKE. Is it more efficient in terms of query time to instead have a table where each row is a permutation:

绝对是。因为 LIKE '%something%' 类型查询 cannot use indexes .所以你查找起来会很慢。如果这还不够,您使用的几乎是 RDBMS 反模式。更多详情:Is storing a delimited list in a database column really that bad?

一旦您将“CSV”列分解为单独的列,您就可以通过规范化数据库来更进一步。

关于mysql - 具有 "list"条目的 SQL 表与每个条目一行的 SQL 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41215624/

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