如何评价deepseek-V3 VS OpenAI o1 自然语言处理成Sql的能力
DeepSeek-V3 介绍
在目前大模型主流榜单中,DeepSeek-V3 在开源模型中位列榜首,与世界上最先进的闭源模型不分伯仲。
准备工作:
笔者只演示实例o1 VS DeepSeek-V3两个模型,大家可以自行验证结果或者实验更多场景,同时也会简单说一下笔者使用感受!
1、openAI o1模型
PS: o1模型是由ChatGPT Plus/Pro 提供,童鞋可以参考教程:
https://littlemagic8.github.io/2024/12/08/how-to-update-ChatGPTPro-plus/
2、注册DeepSeek账号 官网:https://www.deepseek.com/
为严谨,如下图所示


实际应用案例对比
为了更直观地了解 DeepSeek-V3 和 OpenAI o1 的实际表现,我们通过编程任务进行了对比测试。
***测试任务:*将自然语言查询转换为SQL语句: 显示所有今年销售额超过100万的产品 从新建数据库,新建表,新建字段开始,让萌新小白都能看懂的
DeepSeek-V3 的回答:

好的!下面我将从零开始,一步一步教你如何创建一个数据库、表、字段,并编写SQL语句来查询“今年销售额超过100万的产品”。即使是小白也能轻松看懂!
1. 创建数据库
首先,我们需要创建一个数据库来存储数据。数据库就像一个大仓库,里面可以放很多表格。
CREATE DATABASE SalesDB;
CREATE DATABASE是SQL语句,用于创建数据库。SalesDB是数据库的名字,你可以根据需要改成其他名字。
2. 使用数据库
创建好数据库后,我们需要告诉SQL,接下来要在这个数据库里操作。
USE SalesDB;
USE是SQL语句,用于选择要操作的数据库。
3. 创建表
接下来,我们需要创建一个表来存储产品信息。表就像Excel表格,每一行是一条记录,每一列是一个字段。
CREATE TABLE Products (ProductID INT AUTO_INCREMENT PRIMARY KEY, -- 产品ID,唯一标识ProductName VARCHAR(100) NOT NULL, -- 产品名称SalesAmount DECIMAL(15, 2) NOT NULL, -- 销售额SalesDate DATE NOT NULL -- 销售日期
);
CREATE TABLE是SQL语句,用于创建表。Products是表的名字。ProductID是产品的唯一标识,AUTO_INCREMENT表示自动递增,PRIMARY KEY表示主键(唯一且不能重复)。ProductName是产品名称,VARCHAR(100)表示最多存储100个字符。SalesAmount是销售额,DECIMAL(15, 2)表示最多15位数字,其中2位小数。SalesDate是销售日期,DATE表示日期类型。
4. 插入示例数据
为了测试查询,我们需要往表里插入一些数据。
INSERT INTO Products (ProductName, SalesAmount, SalesDate)
VALUES('产品A', 1200000.00, '2023-01-15'),('产品B', 800000.00, '2023-02-20'),('产品C', 1500000.00, '2023-03-10'),('产品D', 900000.00, '2022-12-05');
INSERT INTO是SQL语句,用于插入数据。- 这里插入了4条记录,分别是产品A、B、C、D的销售信息。
5. 查询今年销售额超过100万的产品
现在,我们需要编写SQL语句来查询“今年销售额超过100万的产品”。
SELECT ProductName, SalesAmount, SalesDate
FROM Products
WHERE SalesAmount > 1000000 AND YEAR(SalesDate) = YEAR(CURDATE());
SELECT是SQL语句,用于查询数据。ProductName, SalesAmount, SalesDate是要显示的字段。FROM Products表示从Products表中查询。WHERE是条件语句:SalesAmount > 1000000表示销售额超过100万。YEAR(SalesDate) = YEAR(CURDATE())表示销售日期是今年的(CURDATE()获取当前日期,YEAR()提取年份)。
6. 运行结果
假设当前年份是2023年,运行上面的查询语句后,结果可能是:
| ProductName | SalesAmount | SalesDate |
|---|---|---|
| 产品A | 1200000.00 | 2023-01-15 |
| 产品C | 1500000.00 | 2023-03-10 |
- 只有产品A和产品C满足条件(销售额超过100万且是今年的销售记录)。
总结
- 创建数据库:
CREATE DATABASE SalesDB; - 使用数据库:
USE SalesDB; - 创建表:
CREATE TABLE Products (...); - 插入数据:
INSERT INTO Products (...); - 查询数据:
SELECT ... FROM Products WHERE ...;
通过以上步骤,你可以轻松创建一个数据库,并查询出今年销售额超过100万的产品。希望这个教程对你有帮助!如果有任何问题,欢迎随时提问! 😊
OpenAI o1 的回答:

当然!下面我将以一个简单易懂的方式,带你从零开始创建一个数据库,建立相关表格和字段,并最终编写SQL查询语句来显示所有今年销售额超过100万的产品。即使你是完全的数据库新手,也能跟随这个步骤逐步完成。
1. 安装和设置数据库管理系统(DBMS)
首先,你需要一个数据库管理系统(DBMS)来创建和管理你的数据库。常见的DBMS有:
- MySQL
- PostgreSQL
- SQLite
- Microsoft SQL Server
本教程将以MySQL为例,其他DBMS的操作类似。
1.1 下载和安装MySQL
- 访问 MySQL官方网站 下载适合你操作系统的安装包。
- 按照安装向导完成安装过程。
- 安装完成后,打开MySQL Workbench(图形化界面工具)或使用命令行工具进行操作。
2. 创建数据库
数据库是用来存储和管理数据的容器。在这个例子中,我们将创建一个名为SalesDB的数据库。
2.1 使用命令行创建数据库
CREATE DATABASE SalesDB;
2.2 使用MySQL Workbench创建数据库
- 打开MySQL Workbench并连接到你的MySQL服务器。
- 在左侧的“Navigator”面板中,右键点击“Schemas”。
- 选择“Create Schema…”。
- 输入数据库名称
SalesDB,然后点击“Apply”完成创建。
3. 使用数据库
在创建好数据库后,你需要告诉MySQL你将要使用哪个数据库。
USE SalesDB;
4. 创建表格和字段
为了记录产品和销售数据,我们需要至少两个表:
- Products:存储产品信息。
- Sales:存储销售记录。
4.1 创建Products表
CREATE TABLE Products (ProductID INT AUTO_INCREMENT PRIMARY KEY, -- 产品ID,自增主键ProductName VARCHAR(100) NOT NULL, -- 产品名称Category VARCHAR(50), -- 产品类别Price DECIMAL(10,2) -- 产品价格
);
解释:
ProductID:每个产品的唯一标识,自动递增。ProductName:产品的名称,不能为空。Category:产品所属的类别。Price:产品的价格,支持两位小数。
4.2 创建Sales表
CREATE TABLE Sales (SaleID INT AUTO_INCREMENT PRIMARY KEY, -- 销售记录ID,自增主键ProductID INT, -- 产品ID,外键关联Products表SaleDate DATE, -- 销售日期Quantity INT, -- 销售数量TotalAmount DECIMAL(10,2), -- 销售总额FOREIGN KEY (ProductID) REFERENCES Products(ProductID) -- 外键约束
);
解释:
SaleID:每条销售记录的唯一标识,自动递增。ProductID:关联到Products表的产品ID。SaleDate:销售发生的日期。Quantity:销售的数量。TotalAmount:销售的总金额。
5. 插入示例数据
为了演示查询,我们需要向表中插入一些示例数据。
5.1 插入Products表数据
INSERT INTO Products (ProductName, Category, Price) VALUES
('智能手机', '电子产品', 5000.00),
('笔记本电脑', '电子产品', 8000.00),
('电动自行车', '交通工具', 15000.00),
('咖啡机', '家电', 1200.00),
('无线耳机', '电子产品', 800.00);
5.2 插入Sales表数据
INSERT INTO Sales (ProductID, SaleDate, Quantity, TotalAmount) VALUES
(1, '2025-01-05', 50, 250000.00),
(2, '2025-02-10', 30, 240000.00),
(3, '2025-03-15', 10, 150000.00),
(4, '2025-04-20', 100, 120000.00),
(5, '2025-05-25', 200, 160000.00),
(1, '2024-12-15', 40, 200000.00),
(2, '2024-11-20', 25, 200000.00);
注意: 这里假设当前年份是2025年,插入了一些2025年和2024年的销售记录。
6. 编写SQL查询语句
现在,我们要编写一个SQL查询,来显示所有今年销售额超过100万的产品。
6.1 确定“今年”
假设当前年份是2025年,我们需要筛选SaleDate在2025年的销售记录。
6.2 汇总销售额
我们需要按产品汇总今年的销售总额,并筛选出超过100万的产品。
6.3 完整的SQL查询
SELECT p.ProductID,p.ProductName,SUM(s.TotalAmount) AS TotalSales
FROM Products p
JOIN Sales s ON p.ProductID = s.ProductID
WHERE YEAR(s.SaleDate) = 2025
GROUP BY p.ProductID, p.ProductName
HAVING SUM(s.TotalAmount) > 1000000;
解释:
- SELECT:选择要显示的列,包括产品ID、产品名称和销售总额。
- FROM Products p JOIN Sales s ON p.ProductID = s.ProductID:连接
Products和Sales表,通过ProductID关联。 - WHERE YEAR(s.SaleDate) = 2025:筛选销售日期在2025年的记录。
- GROUP BY p.ProductID, p.ProductName:按产品分组,汇总每个产品的销售额。
- HAVING SUM(s.TotalAmount) > 1000000:筛选出销售总额超过100万的产品。
7. 执行查询并查看结果
在MySQL Workbench或命令行工具中运行上述查询,你将得到所有今年(2025年)销售额超过100万的产品列表。
示例输出:
| ProductID | ProductName | TotalSales |
|---|---|---|
| 1 | 智能手机 | 250000.00 |
| 2 | 笔记本电脑 | 240000.00 |
| 3 | 电动自行车 | 150000.00 |
| 4 | 咖啡机 | 120000.00 |
| 5 | 无线耳机 | 160000.00 |
注意: 根据插入的数据,上述示例中没有任何产品的销售额超过100万,因此实际结果可能为空。为了达到超过100万的条件,你可以增加更多的销售记录或调整TotalAmount的值。
8. 完整的SQL脚本
以下是从创建数据库到执行查询的完整SQL脚本,供你参考和练习:
-- 1. 创建数据库
CREATE DATABASE SalesDB;-- 2. 使用数据库
USE SalesDB;-- 3. 创建Products表
CREATE TABLE Products (ProductID INT AUTO_INCREMENT PRIMARY KEY,ProductName VARCHAR(100) NOT NULL,Category VARCHAR(50),Price DECIMAL(10,2)
);-- 4. 创建Sales表
CREATE TABLE Sales (SaleID INT AUTO_INCREMENT PRIMARY KEY,ProductID INT,SaleDate DATE,Quantity INT,TotalAmount DECIMAL(10,2),FOREIGN KEY (ProductID) REFERENCES Products(ProductID)
);-- 5. 插入Products表数据
INSERT INTO Products (ProductName, Category, Price) VALUES
('智能手机', '电子产品', 5000.00),
('笔记本电脑', '电子产品', 8000.00),
('电动自行车', '交通工具', 15000.00),
('咖啡机', '家电', 1200.00),
('无线耳机', '电子产品', 800.00);-- 6. 插入Sales表数据
INSERT INTO Sales (ProductID, SaleDate, Quantity, TotalAmount) VALUES
(1, '2025-01-05', 50, 250000.00),
(2, '2025-02-10', 30, 240000.00),
(3, '2025-03-15', 10, 150000.00),
(4, '2025-04-20', 100, 120000.00),
(5, '2025-05-25', 200, 160000.00),
(1, '2024-12-15', 40, 200000.00),
(2, '2024-11-20', 25, 200000.00);-- 7. 查询今年销售额超过100万的产品
SELECT p.ProductID,p.ProductName,SUM(s.TotalAmount) AS TotalSales
FROM Products p
JOIN Sales s ON p.ProductID = s.ProductID
WHERE YEAR(s.SaleDate) = 2025
GROUP BY p.ProductID, p.ProductName
HAVING SUM(s.TotalAmount) > 1000000;
总结
通过以上步骤,你已经成功:
- 创建了一个名为
SalesDB的数据库。 - 建立了两个表格:
Products(产品信息)和Sales(销售记录)。 - 插入了示例数据到这两个表中。
- 编写并执行了一个SQL查询,以显示今年销售额超过100万的产品。
进一步学习建议
- 学习SQL基础语法:了解更多SQL语句,如
UPDATE、DELETE、ALTER等。 - 了解数据库设计原则:学习如何设计高效、规范的数据库结构。
- 实践更多查询:尝试编写不同类型的查询,如多表连接、子查询、窗口函数等。
- 使用图形化工具:如MySQL Workbench,可以帮助你更直观地管理和查询数据库。
希望这个指南对你有所帮助,祝你在学习SQL和数据库管理的旅程中取得成功!
End:
o1还是全面一点,全面数据资料丰富的o1,但是永远支持开源,为DeepSeek👏鼓掌👏👏,希望有业余时间的小伙伴也可以参与DeepSeek编码,让开源变得更好!!
相关文章:
如何评价deepseek-V3 VS OpenAI o1 自然语言处理成Sql的能力
DeepSeek-V3 介绍 在目前大模型主流榜单中,DeepSeek-V3 在开源模型中位列榜首,与世界上最先进的闭源模型不分伯仲。 准备工作: 笔者只演示实例o1 VS DeepSeek-V3两个模型,大家可以自行验证结果或者实验更多场景,同时…...
SQL左连接的两种不同情况示例和外连接示例
Oracle;有2个表如下; 执行下图选中的左连接; 左表10条记录,右表3条记录,结果是10条记录; 执行下图的左连接, 老师表为左表,学生表为右表,结果会显示每个老师,…...
【渗透测试术语总结】
Top 渗透测试常用专业术语 相信大家和我一样,搞不清这些专业名词的区别,所以我来整理一下。 1. POC、EXP、Payload与Shellcode POC:全称 Proof of Concept ,中文 概念验证 ,常指一段漏洞证明的代码。 EXP…...
Unity2D初级背包设计后篇 拓展举例与不足分析
Unity2D初级背包设计中篇 MVC分层撰写(万字详解)-CSDN博客、 如果你已经搞懂了中篇,那么对这个背包的拓展将极为简单,我就在这里举个例子吧 目录 1.添加物品描述信息 2.拓展思路与不足分析 1.没有删除只有丢弃功能,所以可以添加垃圾桶 2.格…...
Kafka优势剖析-幂等性和事务
目录 1. 幂等性(Idempotence) 1.1 什么是幂等性? 1.2 幂等性的实现 1.2.1 生产者 ID 和序列号 1.2.2 重复消息检测 1.2.3 幂等性的优势 1.3 幂等性的配置 2. 事务支持(Transactions) 2.1 什么是事务支持&…...
MyBatis深入了解
目录 xml 映射文件中,除了常见的select、insert、update、delete 标签之外,还有哪些标签? Dao 接口的工作原理是什么?Dao 接口里的方法,参数不同时,方法能重载吗? MyBatis 是如何进行分页的?分页插件的原理是什么? 简述 …...
语音技术与人工智能:智能语音交互的多场景应用探索
引言 近年来,智能语音技术取得了飞速发展,逐渐渗透到日常生活和各行各业中。从语音助手到智能家居控制,再到企业客服和教育辅导,语音交互正以前所未有的速度改变着人机沟通的方式。这一变革背后,人工智能技术无疑是关键…...
Openwrt @ rk3568平台 固件编译实践(二)- ledeWRT版本
目录 ledeWRT介绍固件编译下载代码修改feed源更新并安装编译第三方软件包制作用于eMMC烧写的rootfs基于lede发行版验证烧写rk3568.img, LEDE wrt启动成功refhttps://blog.csdn.net/zc21463071/article/details/106751361介绍rk3568平台下, lede 大神版 openwrt固件的下载、编译…...
Windows下调试Dify相关组件(1)--前端Web
1. 什么是Dify? 官方介绍:Dify 是一款开源的大语言模型(LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。 这是个组件式框架,即使是非技…...
对话|企业如何构建更完善的容器供应链安全防护体系
对话|企业如何构建更完善的容器供应链安全防护体系 云布道师 随着云计算和 DevOps 的兴起,容器技术和自动化成为软件开发中的必要手段,软件供应链也进入了自动化及 CI/CD 阶段。然而,容器技术和自动化虽然提升了软件的更新速度&…...
HTML5 缩放动画(Zoom In/Out)详解
HTML5 缩放动画(Zoom In/Out)详解 缩放动画是一种常见的视觉效果,用于使网页元素逐渐放大或缩小,从而吸引用户的注意力。下面将介绍如何使用 CSS 和 JavaScript 实现这种动画效果。 1. 使用 CSS 实现缩放动画 可以通过 CSS 的 …...
C语言——文件IO 【文件IO和标准IO区别,操作文件IO】open,write,read,dup2,access,stat
1.思维导图 2.练习 1:使用C语言编写一个简易的界面,界面如下 1:标准输出流 2:标准错误流 3:文件流 要求:按1的时候,通过printf输出数据,按2的时候,通过p…...
【C++习题】22.随机链表的复制
文章目录 题目:138. 随机链表的复制 - 力扣(LeetCode)代码: 题目:138. 随机链表的复制 - 力扣(LeetCode) 链接🔗:138. 随机链表的复制 - 力扣(LeetCode&…...
备考蓝桥杯:数据结构概念浅谈
目录 1数据结构的概念 什么是数据结构: 为什么要有数据结构 2.数据结构的三个组成要素 1.逻辑结构 2.存储结构 3.数据运算 3。算法好坏的度量(时间复杂度和空间复杂度) 时间复杂度计算 最优和平均和最差时间复杂度 计算时间复杂度例子 空间复…...
【TI毫米波雷达】DCA1000不使用mmWave Studio的数据采集方法,以及自动化实时数据采集
【TI毫米波雷达】DCA1000不使用mmWave Studio的数据采集方法,以及自动化实时数据采集 mmWave Studio提供的功能完全够用了 不用去纠结用DCA1000低延迟、无GUI传数据 速度最快又保证算力无非就是就是Linux板自己写驱动做串口和UDP 做雷达产品应用也不会采用DCA1000的…...
创建型模式3.建造者模式
创建型模式 工厂方法模式(Factory Method Pattern)抽象工厂模式(Abstract Factory Pattern)建造者模式(Builder Pattern)原型模式(Prototype Pattern)单例模式(Singleto…...
【集成学习】Boosting算法详解
文章目录 1. 集成学习概述2. Boosting算法详解3. Gradient Boosting算法详解3.1 基本思想3.2 公式推导 4. Python实现 1. 集成学习概述 集成学习(Ensemble Learning)是一种通过结合多个模型的预测结果来提高整体预测性能的技术。相比于单个模型…...
【Orca】Orca - Graphlet 和 Orbit 计数算法
Orca(ORbit Counting Algorithm)是一种用于对网络中的小图进行计数的有效算法。它计算网络中每个节点的节点和边缘轨道(4 节点和 5 节点小图)。 orca是一个用于图形网络分析的工具,主要用于计算图中的 graphlets&#…...
58. Three.js案例-创建一个带有红蓝配置的半球光源的场景
58. Three.js案例-创建一个带有红蓝配置的半球光源的场景 实现效果 本案例展示了如何使用Three.js创建一个带有红蓝配置的半球光源的场景,并在其中添加一个旋转的球体。通过设置不同的光照参数,可以观察到球体表面材质的变化。 知识点 WebGLRenderer …...
【Git原理和使用】Git 分支管理(创建、切换、合并、删除、bug分支)
一、理解分支 我们可以把分支理解为一个分身,这个分身是与我们的主身是相互独立的,比如我们的主身在这个月学C,而分身在这个月学java,在一个月以后我们让分身与主身融合,这样主身在一个月内既学会了C,也学…...
Clawdbot汉化版企业微信入口教程:5分钟搭建专属AI助手,小白也能搞定
Clawdbot汉化版企业微信入口教程:5分钟搭建专属AI助手,小白也能搞定 1. 为什么选择Clawdbot汉化版? Clawdbot汉化版是一个完全本地化的AI对话系统,它解决了企业用户最关心的三个核心问题: 数据安全:所有…...
新手必看!UI-TARS-desktop快速上手:一句话让电脑自动干活
新手必看!UI-TARS-desktop快速上手:一句话让电脑自动干活 你是否想过,只需要对电脑说一句话,它就能自动完成各种任务?UI-TARS-desktop正是这样一个神奇的AI助手,它能听懂你的自然语言指令,并自…...
智慧校园系统采购,如何平衡功能、价格与服务?
✅作者简介:合肥自友科技 📌核心产品:智慧校园平台(包括教工管理、学工管理、教务管理、考务管理、后勤管理、德育管理、资产管理、公寓管理、实习管理、就业管理、离校管理、科研平台、档案管理、学生平台等26个子平台) 。公司所有人员均有多…...
2026年04月05日最热门的开源项目(Github)
在本期榜单中,有多个项目得到了较高的关注和热度,以下是对这些项目的一些分析: 总体趋势: 本期榜单主要集中在与人工智能(AI)、代码生成和代理系统相关的项目上。很多项目致力于提高代码效率、优化开发流程…...
OpenClaw多通道监控:百川2-13B-4bits同时响应飞书与网页指令
OpenClaw多通道监控:百川2-13B-4bits同时响应飞书与网页指令 1. 为什么需要多通道监控 上周三凌晨两点,我被连续不断的手机振动惊醒——飞书机器人正在疯狂推送任务失败告警。原来团队同时通过飞书群和网页控制台提交了数据清洗任务,导致百…...
JAVA无人共享无人机赁柜预约小程序源码代码
JAVA无人共享无人机租赁柜预约小程序源码实现方案采用Uniapp框架开发无人共享无人机租赁柜预约小程序,需整合后端Java服务和前端跨平台技术。以下是核心实现方案:技术栈选择前端:Uniapp Vue.js uView UI后端:Spring Boot MyBat…...
OpenClaw 太难装了?试试 LangTARS:一行命令部署 + WebUI 管理面板,还能接入 Dify/Coze/nn??
1. 什么是 Apache SeaTunnel? Apache SeaTunnel 是一个非常易于使用、高性能、支持实时流式和离线批处理的海量数据集成平台。它的目标是解决常见的数据集成问题,如数据源多样性、同步场景复杂性以及资源消耗高的问题。 核心特性 丰富的数据源支持&#…...
【2026年最新600套毕设项目分享】springboot校园二手交易系统(14339)
有需要的同学,源代码和配套文档领取,加文章最下方的名片哦 一、项目演示 项目演示视频 二、资料介绍 完整源代码(前后端源代码SQL脚本)配套文档(LWPPT开题报告/任务书)远程调试控屏包运行一键启动项目&…...
PanSearch网盘影视资源搜索聚合工具源码解析:集成多引擎搜索技术,畅享跨平台资源检索
在数字化信息爆炸的时代,影视资源的获取方式日益多样化,但如何在海量资源中快速定位所需内容,成为用户面临的一大挑战。PanSearch网盘影视资源搜索聚合工具应运而生,它通过集成多引擎搜索技术,支持百度网盘、阿里云盘等…...
**基于Python与BCI接口的脑机交互编程实践:从信号采集到实时控制的全流程实
基于Python与BCI接口的脑机交互编程实践:从信号采集到实时控制的全流程实现 在人工智能与神经科学融合加速发展的今天,脑机接口(Brain-Computer Interface, BCI) 正逐渐从实验室走向实用化场景。本文将带你深入一个完整的 Python驱…...
