首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >在sql select语句中生成数字

在sql select语句中生成数字
EN

Stack Overflow用户
提问于 2016-05-04 08:04:47
回答 1查看 81关注 0票数 1

我有一个返回一些父记录和子记录的查询。我想以增量的方式为每个子记录返回一个唯一的id。因此,如果我有一个包含3个childs的记录和1个包含2个childs的记录,则希望返回。

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
     Parent/Child |  Parent_id | Child_id
1.   Parent record,  Parent_id,   0
2.   child_record,   Parent_Id,   1
3.   child_record,   Parent_Id,   2
4.   child_record,   Parent_Id,   3
5.   Parent record,  Parent_id,   0
6.   child_record,   Parent_Id,   1
7.   child_record,   Parent_Id,   2

对于如何从1生成child_id并递增1,然后为下一批子记录重新设置,您有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2016-05-04 08:42:40

此查询根据其父id生成子编号:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
select id_pk  -- pk; defines global sort order
     , p_c    -- node type ('parent', 'child')
     , p_id   -- parent id
     , row_number() over ( partition by p_id order by id_pk ) - 1 c_id
              -- synthetic child id. 
  from test_pc
     ;

根据需要调整order by子句中的排序标准。

示例:(孩子之间的顺序并不重要,只需要一个唯一的本地id )

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
     , row_number() over ( partition by p_id order by p_id, p_c desc ) - 1 c_id
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37021896

复制
相关文章
SQL SELECT 语句
如需获取名为 "LastName" 和 "FirstName" 的列的内容(从名为 "Persons" 的数据库表),请使用类似这样的 SELECT 语句:
子润先生
2021/07/01
8780
SQL SELECT DISTINCT 语句
在表中,可能会包含重复值。这并不成问题,不过,有时您也许希望仅仅列出不同(distinct)的值。
子润先生
2021/07/01
8540
SQL INSERT INTO SELECT 语句
SQL INSERT INTO SELECT 语句 INSERT INTO SELECT 语句从一个表复制数据,然后把数据插入到一个已存在的表中。目标表中任何已存在的行都不会受影响。
赵哥窟
2022/07/28
9780
select top语句 mysql_SQL SELECT TOP 语句[通俗易懂]
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/158565.html原文链接:https://javaforall.cn
全栈程序员站长
2022/09/14
2.2K0
SQL嵌套SELECT语句精讲
SELECT name FROM bbc WHERE region = (SELECT region FROM bbc WHERE name = 'Brazil')
红目香薰
2022/11/29
1.4K0
sql中select into的用法_sql语句insert into用法
大家好,我是架构君,一个会写代码吟诗的架构师。今天说一说sql中select into的用法_sql语句insert into用法,希望能够帮助大家进步!!!
Java架构师必看
2022/07/19
2.2K0
SQL中SELECT语句详解「建议收藏」
本篇文章讲述SQL语句中的SELECT查询语句,以供参考,如有错误或不当之处还望大神们告知。
全栈程序员站长
2022/08/12
2.3K0
SQL中SELECT语句详解「建议收藏」
「SAP ABAP」OPEN SQL(三)【SELECT语句】
  本文所有案例都是基于数据库表SFLIGHT,本案例中的SFLIGHT数据库表数据如下,供各位小伙伴们对照来观察代码运行结果:
THUNDER王
2023/03/10
9710
「SAP ABAP」OPEN SQL(三)【SELECT语句】
Mysql常用sql语句(3)- select 查询语句基础使用
https://www.cnblogs.com/poloyy/category/1683347.html
小菠萝测试笔记
2020/06/09
9460
Mysql常用sql语句(3)- select 查询语句基础使用
SQL Server 数据库设计--SELECT语句
在数据库中,使用最多的就是查询语句:SELECT 语句用于检索表中的数据。常用的查询语句格式如下:
剑指工控
2021/11/09
8120
执行 SQL select 语句的 6 个步骤
现在有一个查询的需求:想要知道除了 "San Bruno" 之外的 2 个城市名称,这 2 个城市要满足一个条件,就是居住的公民数量大于等于(>=)2,对于查询结果呢要按名字升序排序。
dys
2020/07/02
1.4K0
INSERT INTO SELECT语句与SELECT INTO FROM语句区别
语句形式为:Insert into Table2(field1,field2,…) select value1,value2,… from Table1
全栈程序员站长
2022/09/14
1.7K0
灵魂拷问,SQL 查询语句先执行 SELECT吗?
其实,sql引擎在执行上述每一步时,都会在内存中形成一张虚拟表,然后对虚拟表进行后续操作,并释放没用的虚拟表的内存,以此类推。
狼王编程
2021/05/31
1.1K0
Mapper文件在select语句中使用
非常复杂的结果集合,Mapper文件可能长这个样子,(注意当我们在select语句中使用B.title as blog_title,在resultMap的<result property="title" column="blog_title"/> 可以不设,系统会自动映射生成<result property="title" column="blog_title"/>,但是加上更清晰,也不会增加系统负担)如下:
用户8983410
2021/10/07
8260
SQL 查询语句总是先执行 SELECT?你们都错了
很多 SQL 查询都是以 SELECT 开始的。不过,最近我跟别人解释什么是窗口函数,我在网上搜索”是否可以对窗口函数返回的结果进行过滤“这个问题,得出的结论是”窗口函数必须在 WHERE 和 GROUP BY 之后,所以不能”。于是我又想到了另一个问题:SQL 查询的执行顺序是怎样的?
Java帮帮
2019/10/28
1.4K0
SQL 查询语句总是先执行 SELECT?你们都错了
SQL 查询语句总是先执行 SELECT?你们都错了
很多 SQL 查询都是以 SELECT 开始的。不过,最近我跟别人解释什么是窗口函数,我在网上搜索”是否可以对窗口函数返回的结果进行过滤“这个问题,得出的结论是”窗口函数必须在 WHERE 和 GROUP BY 之后,所以不能”。于是我又想到了另一个问题:SQL 查询的执行顺序是怎样的?
Java团长
2019/10/29
1.5K0
SQL 查询语句总是先执行 SELECT?你们都错了
优化 SQL SELECT 语句性能的 6 个简单技巧
SELECT语句的性能调优有时是一个非常耗时的任务,在我看来它遵循帕累托原则。20%的努力很可能会给你带来80%的性能提升,而为了获得另外20%的性能提升你可能需要花费80%的时间。除非你在金星工作,那里的每一天都等于地球上的243天,否则交付期限很有可能使你没有足够的时间来调优SQL查询。 根据我多年编写和运行SQL语句的经验,我开始开发一个检查列表,当我试图提高查询性能时供我参考。在进行查询计划和阅读我使用的数据库文档之前,我会参考其中的内容,数据库文档有时会很复杂。我的检查列表绝对说不上全面或科学,它
小小科
2018/05/04
1.7K0
优化 SQL SELECT 语句性能的 6 个简单技巧
SQL 查询语句总是先执行 SELECT?你们都错了
很多 SQL 查询都是以 SELECT 开始的。不过,最近我跟别人解释什么是窗口函数,我在网上搜索”是否可以对窗口函数返回的结果进行过滤“这个问题,得出的结论是”窗口函数必须在 WHERE 和 GROUP BY 之后,所以不能”。于是我又想到了另一个问题:SQL 查询的执行顺序是怎样的?
Bug开发工程师
2020/03/12
1.2K0
SQL 查询语句总是先执行 SELECT?你们都错了
SQL 查询语句总是先执行 SELECT?你们都错了
很多 SQL 查询都是以 SELECT 开始的。不过,最近我跟别人解释什么是窗口函数,我在网上搜索”是否可以对窗口函数返回的结果进行过滤“这个问题,得出的结论是”窗口函数必须在 WHERE 和 GROUP BY 之后,所以不能”。于是我又想到了另一个问题:SQL 查询的执行顺序是怎样的?
java思维导图
2019/11/04
1.2K0
SQL Server 数据库设计--SELECT语句之二
在上一篇文章中介绍了SQL SERVER的SELECT语句的简单使用方法《SQL Server 数据库设计--SELECT语句》,这篇文章继续介绍其他常用的查询方法。
剑指工控
2021/11/09
4190

相似问题

在INSERT SELECT语句中生成增量数字列值

21

使用SQL server在select语句中生成增量数

44

SQL SELECT语句在IN ()

15

SQL语句If语句在SELECT语句中

26

SQL在SELECT中生成缺失记录

24
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

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