Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql SQL同时插入指定值和选定值_Mysql_Sql_Sql Server_Insert_Sybase - Fatal编程技术网

Mysql SQL同时插入指定值和选定值

Mysql SQL同时插入指定值和选定值,mysql,sql,sql-server,insert,sybase,Mysql,Sql,Sql Server,Insert,Sybase,我有两个表,如下所示: 桌面所有者: UserID Name Initials 1 Peter Pet1 2 Mary Mar1 3 Petra Pet2 表资产 AssetID AssetName OwnerUserID 1 Samsung 3 2 Apple 1 3 Huawei 2

我有两个表,如下所示:
桌面所有者:

UserID    Name      Initials  
1         Peter     Pet1  
2         Mary      Mar1
3         Petra     Pet2 
表资产

AssetID   AssetName    OwnerUserID  
1         Samsung      3  
2         Apple        1  
3         Huawei       2 
现在我想在TableAsset中插入以下记录:

AssetID   AssetName   OwnerUserID  
4         Doro        2
5         Sony        1

如何使用
insert
query和
select
query一步完成?

这回答了问题的原始版本

您可以查找它们:

insert into tableAsset(AssetName, OwnerUserID)
    select @AssetName, o.UserId
    from tableOwner o
    where o.initials = @Initials;

此基本结构适用于任何数据库,尽管传递参数的方法可能因数据库而异。

您可以在单个查询中执行类似操作。传递参数将取决于您的操作方式

insert into TableAsset(AssetName, OwnerUserID)
select 'Doro', (select UserID from TableOwner where Initials = 'Mar1')
union all
select 'Sony', (select UserID from TableOwner where Initials = 'Pet1');

mysql和sql server,sybase指的是不同的,选择它们中的任何一个。如此简单,如此简单。