【问题标题】:Subquery returned more than 1 value.子查询返回超过 1 个值。
【发布时间】:2015-02-24 21:18:42
【问题描述】:

子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或子查询用作表达式时,这是不允许的。

我创建 sp,我想获取电话号码并将它们拆分,然后插入数据库

ALTER proc [dbo].[Mysp_ExistphoneInsert]
@Numbers nvarchar(MAX),
@countryID int
as
insert into tblPhoneNumber (PhoneNumber , [Enabled] , CountryID)
Values ((select Item from dbo.MyFunc_Split(@Numbers, ',')) , 1 , @countryID)

它是我传递给@Numbers 的数据样本: “201001000009,201001000006,201001000005,201001000004,201001000002,201001000000,”

【问题讨论】:

    标签: sql sql-server stored-procedures


    【解决方案1】:

    使用insert . . . select 而不是insert . . . values

    insert intotblPhoneNumber(PhoneNumber, [Enabled], CountryID)
        select Item, 1, @countryID
        from dbo.MyFunc_Split(@Numbers, ',');
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-05-23
      • 2016-04-10
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多