gpt4 book ai didi

php - 如何在不添加任何索引的情况下插入更新重复项

转载 作者:行者123 更新时间:2023-11-29 07:36:21 25 4
gpt4 key购买 nike

我正在尝试基于多列组合来唯一行,而不使用索引/键来插入更新重复行。我需要的是 INSERT ... ON DUPLICATE KEY ,但由于索引大小限制,我无法添加索引。

这是我的表格设计

表:关键字内容

+--------------------+---------------------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+--------------------+---------------------+------+-----+---------+----------------+
| id | int(10) unsigned | NO | PRI | NULL | auto_increment |
| group_id | int(10) unsigned | NO | | NULL | |
| encoding | tinyint(3) unsigned | NO | | 0 | |
| content | text | NO | | NULL | |
| active_period | datetime | YES | | NULL | |
| status | tinyint(3) unsigned | NO | | 1 | |
| flag | tinyint(1) | YES | | 1 | |
| description | text | YES | | NULL | |
| updated_by | varchar(255) | YES | | NULL | |
| updated_at | datetime | YES | | NULL | |
+--------------------+---------------------+------+-----+---------+----------------+

用于唯一行的列是:

  • 组号
  • 内容
  • 状态

我还尝试通过分离出要插入/更新的内容来处理 PHP 中的流程,但由于从电子表格导入的数据量很大,这会导致性能问题。

最佳答案

据我了解,您不能在 3 列上添加组合索引,因为这会因为内容而变得太大。

由于您确实需要一个索引来实现高效查找和插入,我建议在表中添加一列,您可以在其中存储 3 列组合的哈希值,并在其上添加一个唯一索引。

显然,任何散列理论上都存在冲突风险,但使用不太可能成为问题的强散列。

关于php - 如何在不添加任何索引的情况下插入更新重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48578010/

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