我想从select query
中设置值到insert query
,应该如何操作。
insert into t_user (id,user_id) values (1, )
where user_id in (select id from user where id=123)
我希望从select查询结果中设置user_id
的值,怎么在SQL中实现呢?
我想从select query
中设置值到insert query
,应该如何操作。
insert into t_user (id,user_id) values (1, )
where user_id in (select id from user where id=123)
我希望从select查询结果中设置user_id
的值,怎么在SQL中实现呢?
试试这个:
INSERT INTO t_user (id, user_id)
SELECT 1, id
FROM user
WHERE id = 123
values(1, )
,因此我假设您想要为所有来自select语句的结果集插入id = 1,但您可以将其更改为结果集中的任何选定值,而不是1。 - Mahmoud Gamalinsert into t_user(id, user_id) select 1, id from user where id=123;
insert into t_user (id,user_id)
select 1,id from user where id=123
insert into t_user
select 1,id from user where id=123
在这种情况下,这有什么问题:
INSERT INTO t_user(id, user_id) VALUES(1,123);
我的意思是这个问题有点奇怪,如果你一开始就知道两个值,为什么还要选择呢。
INSERT INTO t_user(id, user_id)
SELECT id,1
FROM user ;
WHERE id = 123
---------- -------
articles users
---------- -------
rowid rowid
article_id user_id
user_id user_name
还有一些类似这样的条目
---------------------------------
users
---------------------------------
rowid user_id user_name
---------------------------------
1 124 joe
7 12309 mark
根据另一个表的查找/引用插入值的正确方法如下:
INSERT INTO articles (rowid, article_id, user_id)
SELECT 1, 12392, user_id FROM users
WHERE rowid = 7
这将向文章中插入以下记录
---------------------------------
articles
---------------------------------
rowid article_id user_id
---------------------------------
1 12392 12309
然而,我无法理解为什么您要使用这种数据库设计或插入方法。