首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >我希望为我在单个选择中创建的序列对象生成多个下一个值。

我希望为我在单个选择中创建的序列对象生成多个下一个值。
EN

Stack Overflow用户
提问于 2016-04-08 12:19:48
回答 1查看 991关注 0票数 0

我们在数据库中创建了一个Sequence对象,我们试图从单个select语句中提取多个下一个值,但它并不是这样工作的。下面是我正在尝试的以下查询。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
Select
   1 as PracticeId,
   NAME_1 as LocationN1Text,
   NAME_2 as LocationN2Text,
   federal_tax_id as FTaxId,
   NULL as NameAbb,

   NEXT VALUE for UPS.Seq_Communication AS CommunicationId1,

   NEXT VALUE for UPS.Seq_Communication AS CommunicationId2,

   NEXT VALUE for UPS.Seq_Communication AS CommunicationId3,

 FROM 
 [Staging_ETR] A

但是上面的查询为CommunicationId1、CommunicationId2和communicationId3获得了相同的序列号。但我们需要不同的序列号。有人能帮忙吗?如何从同一个序列对象中在相同的select查询中生成不同的序列号?

EN

回答 1

Stack Overflow用户

发布于 2016-04-08 12:37:08

您正在同一行中多次查询相同的序列。

记录在案

当在查询或默认约束中使用NEXT VALUE FOR函数时,如果使用同一个序列对象不止一次,或者在提供值的语句中同时使用相同的序列对象,并且在执行默认约束时,将为结果集中的行中引用相同序列的所有列返回相同的值。

要生成不同的数字,您需要查询它自己行上的每个数字。如果要将它们放在三列中,则可以应用透视子句。

您不能仅仅将NEXT VALUE FOR移动到子查询、CTE或outer apply以欺骗它生成不同的值。它没有在那里得到支持。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36508638

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文