gpt4 book ai didi

php - MySQL:唯一分组

转载 作者:行者123 更新时间:2023-11-29 08:07:20 27 4
gpt4 key购买 nike

我在设计数据库时遇到问题,但不知道如何解决:

我有下表(相关列):

CREATE TABLE IF NOT EXISTS `prmgmt_tasks` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(300) NOT NULL,
`project_id` int(11) NOT NULL,
);

我想要的:每个任务都有一个唯一的ID(自动增量)。任务的名称不是唯一的,但对于每个项目来说应该是唯一的。例如,“Design userinterface”可以在 id 1 和 2 的项目中出现,但在 id 1 的项目中不能出现两次。类似于“unique for: group by project_id”。

当然,我可以在每个查询中检查这一点,但我正在寻找一种在数据库中对此进行建模的方法,因此无论执行什么查询,它都将始终保持一致。

感谢您的帮助!

最佳答案

在组合字段上创建唯一的复合索引。

CREATE UNIQUE INDEX tasks_name_project
ON prmgmt_tasks (name, project_id);

关于php - MySQL:唯一分组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22439071/

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