gpt4 book ai didi

mysql - 哪种方法可以更快地检查重复条目,然后创建新条目?

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

我想检查一个条目是否存在,如果存在,我会将其计数字段增加 1,如果不存在,我将创建一个新条目并将其计数初始化为 1。很简单,对吗?然而,似乎是这样,我偶然发现了很多方法来做到这一点,但我不确定哪种方法最快。

1)我可以使用它来检查现有条目,然后根据需要更新或创建:

if(mysql_num_rows(mysql_query("SELECT userid FROM plus_signup WHERE userid = '$userid'")))

2)或者我应该使用 WHERE_EXISTS 吗?

SELECT DISTINCT store_type FROM stores
WHERE EXISTS (SELECT * FROM cities_stores
WHERE cities_stores.store_type = stores.store_type);

3)或者使用它插入一个条目,然后如果存在,则更新它:

INSERT INTO table (a,b,c) VALUES (1,2,3)
ON DUPLICATE KEY UPDATE c=c+1;
UPDATE table SET c=c+1 WHERE a=1;

4) 或者我可以将 id 列设置为唯一键,然后等待查看输入时是否存在重复错误?然后我可以更新该条目。

我将有大约 100 万个条目需要搜索,主键当前是 bigint。在搜索条目时我想要匹配的只是 bigint id 字段,目前没有两个条目具有相同的 id,我想保持这种状态。

编辑:天啊,我在错误的部分创建了这个。我的意思是把它放入服务器故障中。

最佳答案

我相信是 3。

设置 INDEXUNIQUE 约束,然后使用数字 3 的语法。

关于mysql - 哪种方法可以更快地检查重复条目,然后创建新条目?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6882639/

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