【发布时间】:2014-01-17 10:14:51
【问题描述】:
如何编写sql查询
我需要类似的东西
Insert Into database.table (userID,credID,time)
values
userId = for all in (10,15,12,17,14,267,16,689,18,7659,20)
credID = for all in (1,2,3,4,5)
time = constant (forall the same)
现在的数据库结构
用户ID、信用ID、时间 10,34,2013-12-12 10,54,2013-12-12
所以我必须得到
userID,credID,time
10,34,2013-12-12
10,54,2013-12-12
10,1,2013-12-12
10,2,2013-12-12
10,3,2013-12-12
10,4,2013-12-12
10,5,2013-12-12
11,1,2013-12-12
11,2,2013-12-12
11,3,2013-12-12
11,4,2013-12-12
11,5,2013-12-12
....
因为逻辑算法必须像
对于范围内的每个用户 ID (10,11,12,13,14,15,16,17,18,19,20) 插入具有 credID 值的新字段 (1,2,3,4,5)
对于单个用户 ID,我可以使用查询创建单个 credID
insert into database.table (userID,credID,time) values (10,1,2013-12-12)
但我需要为多个用户 ID 插入多个 credID
【问题讨论】:
-
你的 sql 伪代码有点混乱,我编辑了它 - 你是这个意思吗?
-
也许吧。 credID 是不在表中的新参数。 userId 始终与其他 credID 位于表中
-
我不明白您所说的 “userId 总是与其他 credID 同在表中”是什么意思
-
userId 与其他 credID 经常存在于数据库中,我需要为现有 userID 插入新的 credID
-
1) 全部或仅部分? 2)这些用户ID都是database.table的一部分?