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

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

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

往期大赛回顾:

2023年数据库编程大赛回顾:一条SQL计算扑克牌24点

2024年数据库编程大赛回顾:一条SQL秒杀100万张火车票

大赛奖品

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

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

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

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

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

比赛玩法

参赛时间

  • 开赛提交: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给出如下结果:

比赛规则与约束

SQL要求

  • 仅允许使用一条 SQL 语句,允许使用数据库内置函数,不允许使用存储过程/自定义函数和代码块。
  • SQL 执行时间不超过 5 分钟,超过 5 分钟则认为成绩无效。

校验与运行环境

  • 参赛者可以在以下环境中自行验证 SQL 的正确性:1. NineData 平台 demo 数据库、2.参赛者自有数据库环境
  • 组委会评测环境配置:4 核 CPU,32 GB 内存

提交规则

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

诚信与原创性要求

  • 选手个人诚信参赛,不允许提交他人比赛代码。如发现 SQL 方案高度相似,工作组以第一个提交的为有效参赛
  • 严禁互相抄袭答案,如果发现有雷同代码,组委会将取消成绩。

测试数据与验证流程

  1. 进入 NineData 官网(www.ninedata.cloud),注册并登录 NineData 控制台
  2. 打开 SQL 窗口,申请一个 mysql demo 数据库
  3. 查询 demo 表数据,game3.sudoku4_4, game3.sudoku9_9
  4. 在 SQL 窗口编写参赛 SQL 并验证逻辑
  5. 在 NineData 官网提交参赛 SQL

参赛数据库

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

参赛提交

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

方式一:官网提交

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

方式二:公众号后台

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

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

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

大赛评选规则

**本次大赛的评委,均是数据库领域的领军人物,通过主办方 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 分)

赛事日程

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

相关推荐
想摆烂的不会研究的研究生7 小时前
每日八股——Redis(1)
数据库·经验分享·redis·后端·缓存
码熔burning7 小时前
MySQL 8.0 新特性爆笑盘点:从青铜到王者的骚操作都在这儿了!(万字详解,建议收藏)
数据库·mysql
猫头虎7 小时前
2025最新OpenEuler系统安装MySQL的详细教程
linux·服务器·数据库·sql·mysql·macos·openeuler
哈库纳玛塔塔8 小时前
放弃 MyBatis,拥抱新一代 Java 数据访问库
java·开发语言·数据库·mybatis·orm·dbvisitor
@LetsTGBot搜索引擎机器人9 小时前
2025 Telegram 最新免费社工库机器人(LetsTG可[特殊字符])搭建指南(含 Python 脚本)
数据库·搜索引擎·机器人·开源·全文检索·facebook·twitter
计算机毕设VX:Fegn08959 小时前
计算机毕业设计|基于springboot + vue动物园管理系统(源码+数据库+文档)
数据库·vue.js·spring boot·后端·课程设计
奇舞精选9 小时前
Claude Code 配置 Figma MCP 实战指南
ai编程·claude
HashTang10 小时前
【AI 编程实战】第 7 篇:登录流程设计 - 多场景、多步骤的优雅实现
前端·uni-app·ai编程
冉冰学姐10 小时前
SSM校园排球联赛管理系统y513u(程序+源码+数据库+调试部署+开发环境)带论文文档1万字以上,文末可获取,系统界面在最后面
数据库·ssm 框架应用·开题报告、
Tony Bai10 小时前
【分布式系统】03 复制(上):“权威中心”的秩序 —— 主从架构、一致性与权衡
大数据·数据库·分布式·架构