0

如何将数据插入到具有 3 个不同值的 db 表中,但还要插入其他不不同的列?所以我有桌子

data               user
__________________________________
user_id            user_id
train_code         train_code
version            version
score              score
                   first_name
                   last_name
                   nick_name

所以我的data复合键包括(user_id, train_code, version)

如何将数据datauser(user_id,train_code,version)不同但还添加分数列的表中插入表中?

我应该删除复合键约束吗?

user_id |     train_code    | version

1004679 |     SGOP-0028     |   10    
1004679 |     SGOP-0028     |   11.1
4

1 回答 1

2

如果在同一个复合键有多个分数时您不介意任何分数,您可以执行以下操作:

insert into data (user_id, train_code, version, score)
select user_id , train_code,version, max(score)
from user
group by user_id, train_code, version

当然,我对“ max (...)”的使用是任意的,并且假设特定的分数对你来说并不重要。即你可以使用 min(...) ,这对你来说都是一样的。

于 2013-05-28T21:46:43.093 回答