数据库 频道

NineData第三届数据库编程大赛:用一条SQL解数独问题

  2025 第三届数据库编程大赛正式开启!本次大赛由 NineData 和云数据库技术社区主办,并联合佰晟智算、达梦数据、 ITPUB、CSDN、IFclub、开源中国、DataFun、墨天轮等技术社区,共同举办了本次《第三届数据库编程大赛》,诚邀各路数据库以及编程技术大牛踊跃参与!

  数独是一种经典的逻辑推理游戏,其规则简洁而富有挑战性,玩法核心围绕已知数字,运用排除法、唯一法等逻辑推理技巧,逐步确定所有空格中的数字。本届大赛延续 "一条 SQL" 的核心挑战,设置题目为「用一条 SQL」解数独问题。

  01

  大赛奖品

  本次数据库编程大赛的奖项安排:一等奖(1人)、二等奖(2人)、三等奖(3人)、阳光普照纪念奖(50人)。

  · 一等奖(1人):大疆无人机 DJI NEO 2 畅飞套装 1 组 + 奖杯

  · 二等奖(2人):Fuzozo 芙崽AI情感陪伴机器人 1 个 + 奖杯

  · 三等奖(3人):华为蓝牙耳机 1 个 + 奖杯

  · 阳光普照纪念奖(50人):办公养生壶 1 个

  数据库编程大赛奖品,欢迎来挑战!

  02

  比赛玩法

  参赛时间

  开赛提交:2025.12.23 ~ 2026.01.08 22:00 截止

  测试评分:2026.01.09~ 2026.01.10

  决赛答辩:2026.01.12(在线)

  比赛题目

  数独是一个非常流行的益智数字游戏,常见有四宫格和九宫格模式,其规则简洁而富有挑战性。在本届大赛中,我们设置了两个难度级别:

  1. 普通挑战

  完成普通挑战的前50名选手

  即可获得参赛纪念奖品

  四宫格数独

  在 4×4 方格内填入 1-4 的数字,要求每行每列和上下、左右每小组的 4 个数字不能重复。

  普通挑战(sudoku 4_4)

  · 数据规模: 100 rows

  · 使用一条 SQL 给出如下图结果。字段 id 为自增字段的数字主键,字段 puzzle 是题目内容,由 4×4 个数字组成,问号表示未知的数字,其中 result 字段是选手需要给出数独的解。

  要求选手使用一条SQL给出如下结果:

  完成普通挑战,可以进一步参加进阶挑战

  (注:提交进阶挑战SQL前必须先提交普通挑战的SQL)

  2. 进阶挑战

  性能得分加解题正确性得分排名前8

  成绩进入决赛评选

  九宫格数独

  在 9×9 的方格内填入 1-9 的数字,要求每行每列和上中下、左中右每 3*3 小组的 9 个数字不能重复。

  进阶挑战 ( sudoku 9_9 )

  · 数据规模: 1000~100万 rows

  · 使用一条 SQL 给出如下图的结果。字段 id 为自增字段的数字主键,字段 puzzle 是题目内容,由 9×9 个数字组成,问号表示未知的数字。其中 result 字段是选手需要给出数独的解。

  要求选手使用一条SQL给出如下结果:

  03

  比赛规则与约束

  规则与约束

  SQL要求

  o 仅允许使用一条 SQL 语句,允许使用数据库内置函数,不允许使用存储过程/自定义函数和代码块。

  o SQL 执行时间不超过 5 分钟,超过 5 分钟则认为成绩无效。

  校验与运行环境

  o 参赛者可以在以下环境中自行验证 SQL 的正确性:1. NineData 平台 demo 数据库、2.参赛者自有数据库环境

  o 组委会评测环境配置:4 核 CPU,32 GB 内存

  提交规则

  o 每位参赛者最多可提交 10 次比赛代码,提交的 SQL 不能超过 10 KB 大小,以最后一次提交的 SQL 作为最终参赛代码

  诚信与原创性要求

  o 选手个人诚信参赛,不允许提交他人比赛代码。如发现 SQL 方案高度相似,工作组以第一个提交的为有效参赛

  o 严禁互相抄袭答案,如果发现有雷同代码,组委会将取消成绩。

  测试数据与验证流程

  1. 进入 NineData 官网(https://www.ninedata.cloud),注册并登录 NineData 控制台

  2. 打开 SQL 窗口,申请一个 mysql demo 数据库

  3. 查询 demo 表数据,game3.sudoku4_4, game3.sudoku9_9

  4. 在 SQL 窗口编写参赛 SQL 并验证逻辑

  5. 在 NineData 官网提交参赛 SQL

  参赛数据库

  大赛可以使用的数据库种类以及相应支持版本:

  04

  参赛提交

  通过数据库编程大赛入口报名,提交 SQL 答案的表单。参赛人员需要提交信息:1. 姓名、2. 邮箱、3. 联系方式、4. 数据库类型 、5. 数据库版本、6. SQL、7. 算法说明。

  方式一:官网提交

  登录 NineData 官网,参赛地址:https://www.ninedata.cloud/sql_sudo2025

  方式二:公众号后台

  NineData 公众号后台回复「数据库编程」,立即获得参赛入口链接。

  方式三:数据库编程大赛群

  扫码进群后,自动获得参赛活动地址和提交答案入口。

  数据库编程大赛群

  欢迎加入,一起交流!

  05

  大赛评选规则

  本次大赛的评委,均是数据库领域的领军人物,通过主办方 NineData 的邀请,组成 2025 年第三届《数据库编程大赛》强大的评审嘉宾团。

《第三届数据库编程大赛》评审嘉宾团

  本次大赛主要会从以下 4 个方面评审,一定要注意下面的评审规则!正确解题数量排名(30%)总得分占比30%,组委会验证:第一名 30 分,第二名 25 分,第三名 22 分,第四名 20 分,第五名 19 分,后面每排名下降一名减少 1 分,以此类推,最低得 10 分。性能(30%)总得分占比 30%,组委会给出测试成绩(第一名 30 分,第二名 25 分,第三名 22 分,第四名 20 分,第五名 19 分,后面每排名下降一名减少 1 分,以此类推,最低得 10 分),总得分占比 30%。进阶挑战,sudoku9_9 表的记录数 1000~100万。代码创新性(20%)总得分占比 20% ,由评委打分( 0~20 分)代码易读性(20%)总得分占比 20% ,由评委打分( 0~20 分)

  06

  赛事日程

  本次大赛提交答题的截止时间:2026 年 01 月 08 日 22:00 点大赛

时间安排

特别提醒:本网信息来自于互联网,目的在于传递更多信息,并不代表本网赞同其观点。其原创性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容、文字的真实性、完整性、及时性本站不作任何保证或承诺,并请自行核实相关内容。本站不承担此类作品侵权行为的直接责任及连带责任。如若本网有任何内容侵犯您的权益,请及时联系我们,本站将会在24小时内处理完毕。
0
相关文章