gpt4 book ai didi

mysql - MySQL 上的 LIKE 查询有多慢? (自定义字段相关)

转载 作者:行者123 更新时间:2023-11-29 14:08:03 25 4
gpt4 key购买 nike

抱歉,如果这是多余的,而且可能是多余的,我看了一下,但在这里找不到符合我想知道的问题。

基本上我们有一个大约有 50000 行的表,并且预计它会变得比这个大得多。我们需要能够允许管理员用户根据其类别将自定义数据添加到项目中,并且用户只需选择他们想要添加信息的管理员定义的字段。

最初,我使用了一个 item_categories_fields 表,该表将 item_fields 到 item_categories 的条目配对,因此管理员可以添加自定义字段并跨类别重复使用它们以保持一致性。 item_fields 与 item_field_values 存在关系,它将值与字段链接起来,这就是我们在 .NET 中处理事物的方式。不过该项目正在使用 CAKEPHP,我们只是边学习边做,所以有时会有点烦人。

但是,我正在考虑添加一个 item_custom_fields 表,该表本质上是 item_id 和一个存储 XMLish 格式数据的文本字段。这仅适用于自定义字段的值。

如果我想通过项目 ID 获取项目没有问题,因为所需的数据存储在项目表中,但如果我想基于自定义字段进行搜索怎么办?会吗

SELECT * FROM item_custom_fields 
WHERE custom_data LIKE '%<material>Plastic</material>%'

(除了用户输入相关问题)如果我想在这种情况下获取塑料制成的元素,是否实用?比如说那会多慢?

谢谢。

编辑:我很担心这一点,因为实际上这个东西在发布时一张表的行数将约为 40 万行,谢谢大家。

最佳答案

任何以 % 开头的 LIKE 查询都不会使用该列上的任何索引,因此查询将扫描整个表找到结果。

响应时间在很大程度上取决于您的机器和 table 的大小,但它绝对不会以任何形状或形式有效。

您以前/现有的解决方案(如果索引良好)应该会快一些。

关于mysql - MySQL 上的 LIKE 查询有多慢? (自定义字段相关),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14037533/

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