SQL 查询
查询基本原则
基本操作
select
从哪里选,选什么?
show用法
复制use `student` -- 切换数据
show databases; -- 查看数据库
show tables; -- 查看有多少表
show columns from student; -- 有多少列
order by
order by
可以按照多列排序,中间用 ,
隔开。
SELECT
*
FROM
student
ORDER BY
class DESC,
grade ASC;
where 子句查询
操作符 | 说明 |
---|---|
= | 等于 |
!= | 不等于 |
> | 大于 |
between .. and .. | 在两个值之间 |
is null | 非空 |
in | 范围内的条件匹配 |
not | 起否定作用,比如 not in (1,5,8) |
and | 并且 |
or | 或 |
通配符过滤
%:任意字符串出现任意的次数
_: 只匹配一个字符
使用正则表达匹配
暂时没学会。。。
语句拼接和计算字段
select concat(class,name) as fullname from student; --对select出来的语句进行拼接
select class*grade as allsum from student; --对两列进行相乘
汇总数据
我们有些时候,总是想要些汇总信息,而不是把他们都检索出来,因此,返回实际表中的数据,是对表和处理资源的一种浪费,更别说是带宽了
函数 | 说明 |
---|---|
avg | 平均 |
count | 总行数 |
max | 某列的最大值 |
min | 某列的最小值 |
sum | 某列总和 |
group by 分组函数
分组允许把数据分成多个分组,以便对每个分组进行聚集计算。
先创建基本表
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for webside
-- ----------------------------
DROP TABLE IF EXISTS `webside`;
CREATE TABLE `webside` (
`id` int(0) NOT NULL AUTO_INCREMENT,
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`url` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
`alexa` int(0) NULL DEFAULT NULL COMMENT '网络排名',
`country` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL,
PRIMARY KEY (`id`) USING BTREE
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
-- ----------------------------
-- Records of webside
-- ----------------------------
INSERT INTO `webside` VALUES (1, 'Google', 'https://www.google.cm/ ', 1, 'USA');
INSERT INTO `webside` VALUES (2, '淘宝', 'https://www.taobao.com/', 13, 'CN');
INSERT INTO `webside` VALUES (3, '菜鸟教程', 'http://www.runoob.com/ ', 4689, 'CN');
INSERT INTO `webside` VALUES (4, '微博', 'http://weibo.com/ ', 20, 'CN');
INSERT INTO `webside` VALUES (5, 'facebook', 'https://www.facebook.com/', 3, 'USA');
SET FOREIGN_KEY_CHECKS = 1;
建好的数据库
错误提示
left join
应该和on
相搭配使用。而不是where
。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 三行代码完成国际化适配,妙~啊~
· .NET Core 中如何实现缓存的预热?