mysql基础自学
发布日期:2021-05-09 06:05:20 浏览次数:335 分类:精选文章

本文共 1391 字,大约阅读时间需要 4 分钟。

基础查询与SELECT语句

从数据库提取数据的基础操作遵循SELECT语法结构:

SELECT 商品编码,店号 FROM 销售表
SELECT * FROM 商品信息表

查询列表支持四种类型数据源:表字段、常量、表达式、函数。查询结果以虚拟表形式呈现,建议在复杂查询时显式声明数据库:

USE 销售数据库;
SELECT 库存量 FROM 商品主表;

当字段名与SQL保留字冲突时,必须使用反引号标识:

SELECT `name` FROM 用户表 WHERE `group`=2

字段别名与数据展示优化

通过AS关键字实现字段重命名:

SELECT employee_id AS 工号, salary*12 年薪 FROM 员工表

特殊字符别名需用双引号包裹:

SELECT SUM(amount) AS "月度销售额(万元)" FROM 交易记录

数据去重技术

DISTINCT关键字消除重复记录:

SELECT DISTINCT 供应商编码 FROM 采购订单表

字段拼接与空值处理

CONCAT函数实现多字段拼接:

SELECT CONCAT(姓氏,'_',名字) AS 姓名全称 FROM 客户名单

IFNULL函数处理空值情况:

SELECT CONCAT(产品编码,IFNULL(批次号,'无批次')) AS 完整编码 FROM 生产记录

条件过滤与高级查询

范围查询方法

SELECT * FROM 销售明细 WHERE 成交价 BETWEEN 500 AND 1000
SELECT 订单号 FROM 物流信息 WHERE 省份 IN ('浙江','江苏','上海')

模糊匹配技巧

LIKE配合通配符实现模式匹配:

SELECT 产品名称 FROM 商品库 WHERE 规格 LIKE '250ml%'

特殊字符转义方法:

SELECT 文档编号 FROM 档案表 WHERE 备注 LIKE '%\%%' ESCAPE '\'

空值检测机制

SELECT 客户ID FROM 联系方式 WHERE 手机号 IS NULL

数据排序与结果集处理

多字段排序示例:

SELECT * FROM 员工考勤 ORDER BY 部门代码 ASC, 迟到次数 DESC

中文特殊排序方案

SELECT 月份 FROM 财务报告 ORDER BY INSTR('一月,二月,三月', 月份)

动态长度排序

SELECT 文章标题 FROM 内容库 ORDER BY LENGTH(摘要) DESC

字符串处理函数集

SUBSTR截取

SELECT SUBSTR(身份证号,7,8) AS 出生日期 FROM 居民信息

LPAD填充

SELECT LPAD(员工编号,6,'0') AS 标准工号 FROM 人事档案

REPLACE替换

UPDATE 商品目录 SET 描述=REPLACE(描述,'新款','2023版')

实战案例:构建带格式的客户信息

SELECT CONCAT(UPPER(LEFT(姓名,1)), SUBSTR(姓名,2)) AS 标准姓名,
RPAD(手机号,11,'*') AS 隐私号码
FROM 客户数据库
WHERE 注册时间 BETWEEN '2023-01-01' AND NOW()
ORDER BY LENGTH(地址) DESC;
上一篇:读书笔记
下一篇:linux基础

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2025年04月28日 03时28分31秒