【发布时间】:2016-03-12 15:05:01
【问题描述】:
我想使用来自不同表的值插入一条记录
只是为了说明:
INSERT INTO tbl1
VALUES([value1], [value2], NOW())
-
value1是一个数字,来自不同表格中随机行中的单元格 -
value2是另一个数字,它来自另一个表中随机行中的单元格
这是我的尝试:
INSERT INTO transactions(itemid, userid, tdate)
VALUES((SELECT TOP 1 ID FROM items ORDER BY RND(ID)), (SELECT TOP 1 ID FROM users ORDER BY RND(ID)), (NOW()))
但这会引发错误:
查询输入必须至少包含一个表或查询
任何帮助将不胜感激。
谢谢!
【问题讨论】:
-
这怎么行?如果要插入文本字段,为什么要使用日期/时间函数。
-
@GordonLinoff 我的意思是使用当前日期作为第三个参数。抱歉,示例不一致。我现在会更新问题。
-
你想要
SELECT TOP 1 ID FROM items给你什么?这是否等同于Min(ID)? -
@Rian 寻找您信任的数据库专家。询问他或她在没有
ORDER BY的情况下SELECT TOP 1是否可靠 -
@Rian 您可能需要一个
order by来保证您返回的ID。这一切看起来都是个坏主意。