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 点

相关推荐
FreeCode2 小时前
一文带你了解LangChain数据容器及其使用
langchain·agent·ai编程
来自于狂人2 小时前
华为云Stack服务实例创建失败通用排查对照表(备考+生产故障定位必备)
服务器·数据库·华为云
墨者阳2 小时前
数据库的自我修炼
数据库·sql·缓存·性能优化
qualifying3 小时前
MySQL——表的操作
数据库·mysql
Data_agent3 小时前
京东图片搜索商品API,json数据返回
数据库·python·json
CC大煊3 小时前
【java】Druid数据库连接池完整配置指南:从入门到生产环境优化
java·数据库·springboot
学Linux的语莫3 小时前
mysql主从同步(复制)搭建
数据库·mysql
SelectDB3 小时前
慢 SQL 诊断准确率 99.99%,天翼云基于 Apache Doris MCP 的 AI 智能运维实践
数据库·人工智能·apache
JIngJaneIL3 小时前
基于java+ vue交友系统(源码+数据库+文档)
java·开发语言·前端·数据库·vue.js·spring boot·交友