当前位置: 首页 > article >正文

Mysql?基础语法!!!

作为程序员、数据分析从业者甚至是产品运营SQL都是必须掌握的核心技能。不管是后端开发对数据库增删改查还是数据分析提取业务数据本质都是在写SQL语句。很多新手觉得SQL难其实是没有理清逻辑。SQL的核心逻辑非常简单所有基础操作都围绕增(INSERT)、删(DELETE)、改(UPDATE)、查(SELECT)四大核心展开其中查询语句是重中之重占据日常使用的90%以上。今天这篇博客我将从零开始梳理最常用、最实用的基础SQL语句搭配通俗易懂的示例看完就能直接上手实操一、SQL前置基础认知1. 什么是SQLSQLStructured Query Language结构化查询语言是用于操作关系型数据库MySQL、Oracle、SQL Server等的标准化语言专门用来实现数据库数据的查询、新增、修改、删除、管理等操作。2. 核心分类新手必记日常开发99%的场景只用掌握DML数据操作语言也就是我们常说的增删改查查询SELECT读取数据库数据使用频率最高新增INSERT向数据表添加新数据修改UPDATE更新数据表已有数据删除DELETE删除数据表数据其他DDL数据库结构定义、DCL权限管理语句新手入门阶段只需简单了解即可。3. 通用规范SQL语句不区分大小写select和SELECT效果一致建议关键字大写可读性更强每条语句以分号 ;结尾字符串数据用单引号包裹数字无需引号可随意换行、空格不影响语句执行后文所有示例均基于常用的用户表 userid、username、age、gender、create_time演示贴合真实业务场景。二、核心重点SELECT 查询语句查询是SQL的核心所有数据提取、统计、筛选都依赖SELECT语法灵活且用法最多我们从基础到常用进阶逐一讲解。1. 基础查询查询指定字段数据是最常用的基础写法-- 查询表中所有字段数据* 代表所有字段 SELECT * FROM user; -- 查询指定字段用户名、年龄 SELECT username, age FROM user;2. 去重查询 DISTINCT查询结果中去除重复数据只展示唯一值-- 查询用户所有唯一的年龄 SELECT DISTINCT age FROM user;3. 条件查询 WHERE重中之重通过条件筛选符合要求的数据支持多种运算符、、、!、AND、OR、IN、LIKE等。-- 查询年龄为20岁的用户 SELECT * FROM user WHERE age 20; -- 查询年龄大于18岁的成年用户 SELECT * FROM user WHERE age 18; -- 查询年龄在18-30岁之间的用户 SELECT * FROM user WHERE age 18 AND age 30; -- 查询性别为男 或 年龄30岁的用户 SELECT * FROM user WHERE gender 男 OR age 30; -- 查询年龄为18、20、25岁的用户 SELECT * FROM user WHERE age IN (18,20,25); -- 模糊查询用户名包含“张”的用户 SELECT * FROM user WHERE username LIKE %张%; -- 模糊查询用户名以“李”开头 SELECT * FROM user WHERE username LIKE 李%;4. 排序查询 ORDER BY对查询结果进行排序ASC升序默认DESC降序-- 按年龄升序排序从小到大 SELECT * FROM user ORDER BY age ASC; -- 按创建时间降序排序最新用户在前 SELECT * FROM user ORDER BY create_time DESC;5. 分页查询 LIMIT用于限制查询数据条数解决数据过多加载缓慢的问题是项目分页功能的核心-- 查询前10条数据 SELECT * FROM user LIMIT 10; -- 分页第1页每页10条偏移量0条数10 SELECT * FROM user LIMIT 0,10; -- 分页第2页每页10条偏移量10条数10 SELECT * FROM user LIMIT 10,10;6. 聚合函数统计用于数据统计、计算常用5大聚合函数COUNT计数、SUM求和、AVG平均值、MAX最大值、MIN最小值-- 统计用户总数量 SELECT COUNT(*) FROM user; -- 统计所有用户的年龄总和 SELECT SUM(age) FROM user; -- 计算用户平均年龄 SELECT AVG(age) FROM user; -- 查询最大年龄、最小年龄 SELECT MAX(age), MIN(age) FROM user;7. 分组查询 GROUP BY根据指定字段分组统计常和聚合函数搭配使用HAVING用于筛选分组后的结果WHERE筛选分组前数据-- 按性别分组统计每种性别的用户数量 SELECT gender, COUNT(*) AS user_num FROM user GROUP BY gender; -- 按年龄分组筛选出用户数量大于2的年龄组 SELECT age, COUNT(*) AS user_num FROM user GROUP BY age HAVING user_num 2;三、新增语句INSERT用于向数据表中添加新数据支持单条、多条新增-- 单条数据新增指定字段 INSERT INTO user (username, age, gender, create_time) VALUES (张三, 22, 男, NOW()); -- 多条数据批量新增高效写法推荐 INSERT INTO user (username, age, gender, create_time) VALUES (李四, 25, 女, NOW()), (王五, 28, 男, NOW()); -- 不指定字段新增必须按表字段顺序传值 INSERT INTO user VALUES (NULL, 赵六, 23, 女, NOW());四、修改语句UPDATE更新数据表中已有数据务必加WHERE条件不加条件会更新全表数据属于高危操作-- 修改指定用户的年龄 UPDATE user SET age 24 WHERE username 张三; -- 同时修改多个字段 UPDATE user SET age 26, gender 女 WHERE id 2; -- 高危无WHERE条件会更新全表所有数据禁止随意使用 UPDATE user SET age 20;五、删除语句DELETE删除数据表数据同样必须携带WHERE条件否则清空全表数据-- 删除指定用户数据 DELETE FROM user WHERE username 赵六; -- 删除年龄小于18岁的用户 DELETE FROM user WHERE age 18; -- 高危无WHERE条件清空整张表数据 DELETE FROM user;六、新手必避的5个SQL坑很多新手写SQL报错、出bug基本都是踩了这些基础坑一定要牢记UPDATE/DELETE 不带WHERE条件直接操作全表数据生产环境极易造成数据事故操作前务必核对条件模糊查询 %前缀过多LIKE %张三 无法走索引数据量大时查询极慢尽量避免左模糊GROUP BY 字段不规范分组查询时非聚合字段必须出现在GROUP BY中否则会报错字符串未加单引号字符、时间类型数据必须用包裹数字类型无需引号混用会直接报错忽略NULL值判断判断字段为空不能用 NULL必须用 IS NULL / IS NOT NULL七、总结SQL的基础核心完全围绕增删改查展开其中SELECT查询是学习和使用的重点90%的工作场景只需要熟练掌握条件筛选、排序、分页、聚合统计、分组查询即可满足需求。新手学习不用死记硬背建议多动手实操结合业务场景写语句熟练掌握基础后再进阶学习多表联查、子查询、索引优化等高阶内容。后续我会继续更新SQL高阶用法、实战技巧、性能优化等内容感兴趣可以持续关注

相关文章:

Mysql?基础语法!!!

作为程序员、数据分析从业者,甚至是产品运营,SQL都是必须掌握的核心技能。不管是后端开发对数据库增删改查,还是数据分析提取业务数据,本质都是在写SQL语句。很多新手觉得SQL难,其实是没有理清逻辑。SQL的核心逻辑非常…...

终极Obsidian笔记模板指南:如何用kepano-obsidian构建你的第二大脑

终极Obsidian笔记模板指南:如何用kepano-obsidian构建你的第二大脑 【免费下载链接】kepano-obsidian My personal Obsidian vault template. A bottom-up approach to note-taking and organizing things I am interested in. 项目地址: https://gitcode.com/gh_…...

从脚本到系统:设计一个支持插件、限流、重试与监控的 Python 异步爬虫框架

从脚本到系统:设计一个支持插件、限流、重试与监控的 Python 异步爬虫框架 很多人第一次写 Python 爬虫,都是从几十行脚本开始的:requests.get()、BeautifulSoup、for 循环、保存 CSV。它很快,也很有成就感。但真实项目往往不是“…...

ComfyUI-WD14-Tagger:AI智能图像标签提取的终极完整指南

ComfyUI-WD14-Tagger:AI智能图像标签提取的终极完整指南 【免费下载链接】ComfyUI-WD14-Tagger A ComfyUI extension allowing for the interrogation of booru tags from images. 项目地址: https://gitcode.com/gh_mirrors/co/ComfyUI-WD14-Tagger 在AI图像…...

终极音乐解锁指南:3步让加密音乐在任何设备自由播放

终极音乐解锁指南:3步让加密音乐在任何设备自由播放 【免费下载链接】unlock-music 在浏览器中解锁加密的音乐文件。原仓库: 1. https://github.com/unlock-music/unlock-music ;2. https://git.unlock-music.dev/um/web 项目地址: https:/…...

概率论:常见分布的期望与方差、中心极限定理、切比雪夫不等式

目录 一、0、1分布 二、二项分布 三、泊松分布 四、均匀分布​ 五、指数分布 六、正态分布 七、中心极限定理及其应用 (1)中心极限定理的定义 (2)使用示例 八、切比雪夫不等式 (1)切比雪夫不…...

3步掌握OpenSpeedy:免费开源游戏加速工具使用指南

3步掌握OpenSpeedy:免费开源游戏加速工具使用指南 【免费下载链接】OpenSpeedy 🎮 An open-source game speed modifier. 项目地址: https://gitcode.com/gh_mirrors/op/OpenSpeedy 你是否曾为游戏卡顿而烦恼?是否希望在单机游戏中加快…...

基于BLE模块的低功耗无线遥控器设计与实现

1. 项目概述:基于BLE模块的无线遥控器设计与实现几年前,我在捣鼓智能家居时,一直想找一个低功耗、响应快、又能自己完全掌控的无线遥控方案。市面上的成品要么协议封闭,要么功耗感人,要么延迟高得让人着急。后来&#…...

3步快速恢复加密压缩包密码:ArchivePasswordTestTool终极指南

3步快速恢复加密压缩包密码:ArchivePasswordTestTool终极指南 【免费下载链接】ArchivePasswordTestTool 利用7zip测试压缩包的功能 对加密压缩包进行自动化测试密码 项目地址: https://gitcode.com/gh_mirrors/ar/ArchivePasswordTestTool 面对遗忘的加密压…...

Diablo Edit2:3步掌握暗黑破坏神2存档修改的终极秘籍

Diablo Edit2:3步掌握暗黑破坏神2存档修改的终极秘籍 【免费下载链接】diablo_edit Diablo II Character editor. 项目地址: https://gitcode.com/gh_mirrors/di/diablo_edit 还在为暗黑破坏神2中刷装备的漫长过程感到疲惫吗?Diablo Edit2这款免费…...

地理空间机器学习库全解析:从TorchGeo到Raster Vision的实战指南

1. 项目概述:为什么我们需要专门的地理空间机器学习库?如果你尝试过用标准的PyTorch或TensorFlow去处理一张卫星影像,大概率会在第一步就卡住。不是模型写不出来,而是数据根本读不进去,或者读进去了却对不上位置。一张…...

为什么你的DeepSeek总漏检重构后代码?4步反混淆预处理法(附LLM辅助去装饰器Python脚本)

更多请点击: https://codechina.net 第一章:DeepSeek代码重复检测 DeepSeek-R1 模型在训练过程中引入了严格的代码去重机制,其核心目标是消除训练语料中语义等价或高度相似的代码片段,从而提升模型对真实编程模式的学习能力与泛化…...

内存申请和使用的场景分析(以AP->kernal->ISP为例)

在 ISP(Image Signal Processor)系统中,AP 与 ISP 之间的内存交互本质上是一个**“AP 申请可 DMA 访问的共享内存 → 内核建立映射 → 硬件寻址读写 → 同步与回收”**的过程。下面按数据流分层详细拆解。一、ISP 内存需求的特殊性 与普通应用…...

告别手动标注!用SAM(Segment Anything)和Python脚本,5分钟批量生成你的分割数据集

5分钟批量生成分割数据集:SAM自动化标注全流程实战 在计算机视觉领域,数据标注一直是制约模型开发效率的瓶颈。传统手工标注不仅耗时费力,还容易引入人为误差。Meta开源的Segment Anything Model(SAM)彻底改变了这一局…...

【国家级攻防演练级建议】:DeepSeek私有化部署中4类隐蔽后门植入路径与实时检测方案

更多请点击: https://kaifayun.com 第一章:DeepSeek私有化部署中隐蔽后门植入的攻防对抗本质 在私有化场景下,DeepSeek模型的部署链路常跨越镜像构建、权重加载、推理服务启动及API网关接入等多个环节。攻击者可利用构建上下文污染、依赖包劫…...

DeepSeek代码审查能力白皮书(2024企业级实测报告)

更多请点击: https://kaifayun.com 第一章:DeepSeek代码审查能力白皮书(2024企业级实测报告)概述 本报告基于2024年Q1至Q3期间,面向金融、电信与云原生三大垂直行业的17家头部企业客户开展的深度实测,覆盖…...

Lindy多步骤任务自动化落地全图谱(企业级架构师压箱底实践)

更多请点击: https://codechina.net 第一章:Lindy多步骤任务自动化落地全图谱(企业级架构师压箱底实践) Lindy效应在自动化系统设计中揭示了一个关键洞察:越久经考验的实践,其未来预期寿命越长。Lindy多步…...

Midjourney V6锐化失控?3步诊断+5组--sref/--stylize协同参数公式,立竿见影修复模糊与锯齿

更多请点击: https://intelliparadigm.com 第一章:Midjourney V6锐化失控的本质归因 Midjourney V6 引入的全新扩散架构与隐式细节增强机制,导致图像生成过程中高频纹理被过度强化,其根本原因并非参数误配,而是模型在…...

SpringBoot WebClient 介绍

目录一、什么是 WebClient?二、 WebClient 能解决什么问题?三、WebClient 和 RestTemplate 的区别四、WebClient 的核心优势1. 非阻塞(Non-Blocking)2. 支持异步3. 链式 API 更现代五、WebClient 的核心对象六、Mono 和 Flux 是什…...

仅限首批200位架构师获取:DeepSeek-DDD联合建模工作坊实录(含领域事件风暴原始会议录像+决策日志)

更多请点击: https://kaifayun.com 第一章:DeepSeek领域驱动设计的范式演进与本质洞察 DeepSeek作为面向大规模智能体协同与复杂业务语义建模的新一代AI原生架构,其领域驱动设计(DDD)实践已突破传统分层单体范式&…...

CI/CD流水线中的幽灵依赖——DeepSeek项目92%存在未声明的transitive risk,你中招了吗?

更多请点击: https://intelliparadigm.com 第一章:CI/CD流水线中的幽灵依赖——DeepSeek项目92%存在未声明的transitive risk,你中招了吗? 在现代CI/CD实践中,开发者常误以为 package.json 或 requirements.txt 中显式…...

如何在原神中解放双手:自动钓鱼、拾取与对话跳过的终极指南

如何在原神中解放双手:自动钓鱼、拾取与对话跳过的终极指南 【免费下载链接】genshin-impact-script 原神脚本,包含自动钓鱼、自动拾取、自动跳过对话等多项实用功能。A Genshin Impact script includes many useful features such as automatic fishing…...

NBT数据可视化编辑解决方案:NBTExplorer技术解析与应用指南

NBT数据可视化编辑解决方案:NBTExplorer技术解析与应用指南 【免费下载链接】NBTExplorer A graphical NBT editor for all Minecraft NBT data sources 项目地址: https://gitcode.com/gh_mirrors/nb/NBTExplorer NBTExplorer是一款面向Minecraft数据管理的…...

PrediPrune:机器学习驱动的编译器超级优化候选剪枝策略

1. 项目概述与核心挑战在编译器优化的世界里,我们总在追求极致的性能。传统的编译器优化器,比如LLVM的Pass,依赖于一系列预定义的、经过验证的转换规则。它们很高效,但想象力也受限于这些规则。超级优化器(Superoptimi…...

终极指南:5步掌握Cursor AI Pro完整功能免费解锁技巧

终极指南:5步掌握Cursor AI Pro完整功能免费解锁技巧 【免费下载链接】cursor-free-vip [Support 0.45](Multi Language 多语言)自动注册 Cursor Ai ,自动重置机器ID , 免费升级使用Pro 功能: Youve reached your tria…...

3分钟终极指南:用ncmdump轻松解密网易云音乐NCM格式文件

3分钟终极指南:用ncmdump轻松解密网易云音乐NCM格式文件 【免费下载链接】ncmdump 项目地址: https://gitcode.com/gh_mirrors/ncmd/ncmdump 还在为网易云音乐下载的NCM格式文件无法在其他播放器播放而烦恼吗?ncmdump正是解决这个问题的神器&…...

Python到Android的魔法之旅:5步将你的代码变成移动应用

Python到Android的魔法之旅:5步将你的代码变成移动应用 【免费下载链接】python-for-android Turn your Python application into an Android APK 项目地址: https://gitcode.com/gh_mirrors/py/python-for-android 想象一下,你花了几个月时间精心…...

Safe Exam Browser虚拟机绕过实战:深度解析与安全研究指南

Safe Exam Browser虚拟机绕过实战:深度解析与安全研究指南 【免费下载链接】safe-exam-browser-bypass A VM and display detection bypass for SEB. 项目地址: https://gitcode.com/gh_mirrors/sa/safe-exam-browser-bypass 在数字化教育快速发展的今天&…...

免费解锁AMD Ryzen隐藏性能:SMUDebugTool终极指南

免费解锁AMD Ryzen隐藏性能:SMUDebugTool终极指南 【免费下载链接】SMUDebugTool A dedicated tool to help write/read various parameters of Ryzen-based systems, such as manual overclock, SMU, PCI, CPUID, MSR and Power Table. 项目地址: https://gitcod…...

从SIM800到BK A7670E:4G Cat.1模块硬件平替转接板设计全解析

1. 项目概述:从2G到4G的硬件平替升级 手头有个老项目,用的还是SIM800这种经典的2G模块,现在网络环境变了,2G退网是大势所趋,信号覆盖越来越差,项目得活下去,升级到4G成了刚需。但问题来了&#…...