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

SQL基本知识

在B站学习了黑马程序员的javaweb+AI,做个笔记(*^▽^*). 

DDL

DDL(Data Definition Language)

DML

DML(Data Manipulation Language数据操作语言),用来对数据库中表的数据记录进行增、删、改操作 

插入

注意:字符串和日期型数据必须包含在引号中(单或者双)

 修改

updata 表名 set 字段名1=值1 , 字段名2=值2 , ... [ where 条件 ];
updata emp set username='zhangsan' , name='张三' where id=1;

删除

注意:delete如果没有条件,会删除整张表的所有数据;

delete语句不能删除某一个字段的值(如果要操作,可以使用updata,将该字段的值设置为NULL)

delete from 表名 [where 条件];
delete from emp where ID=1;

DQL

Data Query Language(数据查询语言)

select 字段列表 from 表名列表 where 条件列表 group by 分组字段列表 having 分组后条件列表 order by 排序字段列表 limit 分页参数
--查询多个字段
select 字段1,字段2 from 表名;
--查询所有字段
select * from 表名;
--为查询字段设置别名,as可以省略
select 字段1 as 别名1,字段2 as 别名2 from 表名;
--去除重复记录
select distinct 字段列表 from 表名;

条件查询:

条件查询中的一些运算符:

--查询姓名为两个字的员工信息
select * from emp where name like '__';

 _是单个字符;%是任意个字符

分组+聚合:

count——统计数量(不参与null的统计,可以用字段、常量、*  ,最好用 * )

例:select  count ( * )  from  emp

max——最大值

min——最小值

avg——平均值

sum——求和

分组查询:

分组之后,select后的字段列表不能随意书写,能写的一般是分组字段 + 聚合函数

where和having的区别:where是分组前,having是分组后;where不能对聚合函数进行判断,而having可以。

完成两个需求,注意第二个需求的第一种写法为什么不对:

1.根据性别分组,统计男女员工的数量     

2.先查询入职时间在'2015-01-01'以前的员工,并对结果根据职位分组,获取员工数量大于等于2的职位

--1.
select gender,count(*) from emp group by gender;
--2.
--错误写法:
select job,count(*) from job where entry_date <= '2015-01-01' and count(*)>=2 group by job;
--正确写法:
select job,count(*) from job where entry_date <= '2015-01-01' group by job having count(*)>=2;

排序查询:

升序: asc(默认);降序:desc。

select * from emp order by entry_date asc ,update_time desc;

分页查询:

select * from emp limit 起始,记录个数
select * from emp limit 0,5;

相关文章:

  • 代码随想录二刷|动态规划11
  • 最新版本SpringAI接入DeepSeek大模型,并集成Mybatis
  • Linux系统里怎么怎么截图
  • 低代码与开发框架的一些整合[3]
  • 超大规模分类(四):Partial FC
  • ReentrantLock 底层实现
  • 【git】【reset全解】Git 回到上次提交并处理提交内容的不同方式
  • AI智能体与大语言模型:重塑SaaS系统的未来航向
  • HTML篇
  • 区块链仿真工具SimBlock使用
  • PDF处理控件Aspose.PDF教程:使用 Python 将 PDF 转换为 TIFF
  • 【Spring】统一功能处理
  • Windows版FFmpeg使用及B站视频下载示例python源码
  • 本地部署流水账之ollama安装+Deepseek安装
  • Java中的并发工具类:CountDownLatch、CyclicBarrier、Semaphore详解
  • 怎么进行稀疏矩阵转化
  • 【STL学习】(6)list的模拟
  • 基于Spring Security 6的OAuth2 系列之二十三 - 高级特性--TLS客户端认证方法之二
  • 解密RAG系统排序优化:从基础原理到生产实践
  • 洛谷每日1题-------Day3__级数求和
  • 最快3天开通一条定制公交线路!上海推出服务平台更快响应市民需求
  • 追光|铁皮房、土操场,这有一座“筑梦”摔跤馆
  • “五一”假期银联、网联共处理支付交易234.39亿笔
  • 董卓的前半生:边荒之地的工具人
  • “子宫肌瘤男性病例”论文后:“宫颈癌、高危产妇”论文也现男性病例,作者称“打错了”
  • 当AI开始谋财害命:从骗钱到卖假药,人类该如何防范?