SQL-限制从另一个表插入的值

SQL-限制从另一个表插入的值,sql,sql-pl,Sql,Sql Pl,我正在尝试插入以下内容: 插入表格A选择b.ID,。。。。。来自表b,其中代码='NL' 问题是从表B中选择*,其中代码='NL';返回多个值 是否有任何方法将其限制为仅1个值 我尝试了select min(b.id),但没有成功使用whererownum=1 insert into TABLEA select b.ID,..... from TABLEB b where code = 'NL' and rownum = 1 但你确定要这么做吗?如果它实际上是你想要的第二排呢。您可能想弄清楚为

我正在尝试插入以下内容:

插入表格A选择b.ID,。。。。。来自表b,其中代码='NL'

问题是从表B中选择*,其中代码='NL';返回多个值

是否有任何方法将其限制为仅1个值


我尝试了
select min(b.id)
,但没有成功

使用where
rownum=1

insert into TABLEA select b.ID,..... from TABLEB b where code = 'NL' and rownum = 1

但你确定要这么做吗?如果它实际上是你想要的第二排呢。您可能想弄清楚为什么查询返回多个。

根据我收集的信息,您只希望插入where code=NL的一个实例,即使有多条记录符合此条件


如果这是您想要的,请将“select*”更改为“select top 1*”,它将仅从子查询中提取一条记录。

top仅适用于SQL Server,OP使用的是PL SQL,通常是Oracle。