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

SQL DML数据操作语言与DQL数据查询语言

SQL DML数据操作语言与DQL数据查询语言

1.DML(数据操作语言)

  • INSERT ( 添加数据语句 )
  • UPDATE ( 修改数据语句 )
  • DELETE ( 删除数据语句 )

1.1添加语句(insert)

> 语法: > INSERT INTO 表名 [ ( 字段1, 字段2, 字段3, … ) ] VALUES ( '值1', '值2', '值3', …)

注意
字段或值之间用英文逗号隔开
“字段1, 字段2…”该部分可省略,但添加的值务必与表结构数据列顺序相对应,且数量一致
可同时插入多条数据,values 后用英文逗号隔开

单个插入: insert into student(id,name,money) values(1,'张三',3.9);
多条插入: insert into student(id,name,money) values(3,'张三',3.9),(2,'张三',3.9);

1.2修改语句(update)

> 语法: > UPDATE 表名 SET 列名 = 新值 [ , 列名1 = 新值2, …. ] [ WHERE 条件 ]; >

注意
修改多列时,使用逗号(,)隔开
value 为修改后的数据,可以为变量、具体值、表达式或者嵌套的SELECT结果
WHERE条件如果不指定,则修改表中所有数据

修改ID为1的数据: update student set name = '李四' , money = 3.6 where id = 1; 
修改表中所有数据: update student set name = '李四' , money = 3.6;

1.3WHERE条件子句(条件筛选)

**运算符** =,<> 或 !=,>,<,>=,<=,BETWEEN...AND, AND,OR

1.4 删除语句(delete)

> 语法: > DELETE FROM 表名 [ WHERE 条件 ]; > > **注意** : > 如不指定则删除该表的所有列数据

2.DQL(数据查询语言)

2.1 基础查询语句(select)

> 语法: > SELECT 列名1,列名2 FROM 表名 [ WHERE 条件 ]; > > **注意** : > 当出现多列时要以逗号(,)隔开 > 当不写WHERE条件时,查询当前表所有数据 > 如想查所有列时,可用*号代替所有列(不建议使用) > 查询出的列中可以加入表达式,如:select 成绩/10 > where条件有比较操作符与逻辑操作符构成

2.2 别名(as)

别名分为列别名 与 表别名

语法:
SELECT 列名1 as 列别名,列名2 FROM 表名 as 表别名 [ WHERE 条件 ];

注意
as 可以不用写

2.3 操作符

逻辑操作符 | 名称 | 语法 | | :------: | :---------------: | | AND或&& | a AND b 或 a && b | | OR或\|\| | a OR b 或 a\|\|b | | NOT或! | NOT a 或 !a |

比较操作符

名称语法
IS NULLa IS NULL
IS NOT NULLa IS NOT NULL
BETWEENa BETWEEN b AND c
LIKEa LIKE b
INa IN (a1,a2,a3,….)

注意
1、数值数据类型的记录之间才能进行算术运算
2、相同数据类型的数据之间才能进行比较

2.4 多表连接查询

多表连接查询分为: > * 内连接(inner join) > * 外连接: 1.左连接(LEFT JOIN) 2.右连接(RIGHT JOIN)

内连接(inner join )

说明
两张表连接,两张表字段完全匹配才返回数据

语法:
SELECT 列名 from a表 inner join b表 on a表.连接字段=b表.连接字段 [WHERE tiaoj]

如 学生表与年级表
学生表数据:
学生1 年级1
学生2 年级2 
年级表数据:
年级1

select * from student a INNER JOIN grade b on a.GradeId=b.GradeID;
结果:
显示

左连接(LEFT JOIN)
右连接(RIGHT JOIN)
DISTINCT


http://www.kler.cn/a/428416.html

相关文章:

  • kettle与Springboot的集成方法,完整支持大数据组件
  • 【2024年华为OD机试】 (C卷,200分)- 字符串拼接(JavaScriptJava PythonC/C++)
  • MyBatis-Plus的插件
  • 登录认证(4):令牌技术:JWT令牌
  • 我的图形布局 组织结构图布局
  • Java实现微店商品详情接口调用的完整指南
  • 无公网IP实现飞牛云手机APP远程连接飞牛云NAS管理传输文件
  • 【数字电路与逻辑设计】实验三 8 位寄存器 74374
  • react 路由鉴权
  • TriCore架构-TC397将code从原来在P-Cache地址移到PSPR的地址,CPU的负载率为什么没影响
  • 使用C#开发VTK笔记(四)-创建文字及坐标轴导入点云
  • 每日一题 LCR 114. 火星词典
  • C#里怎么样使用where方法2?
  • 常见的 CSS 对齐方式介绍及代码示例
  • ros项目dual_arm_pick-place(编辑已有的moveit配置助手包)
  • 云数据库 HBase
  • Linux:软硬链接
  • 认识自定义协议
  • 英语写作中“错误”mistake error的用法
  • 企业级包管理器之 npm 回顾 (2)
  • 微信小程序,引用字体图标的渲染问题
  • 【SKFramework框架核心模块】3-6、FSM有限状态机模块
  • 菜鸟每日刷牛客NP39
  • mysql怎么获取当前日期
  • 101种美食-图像分类数据集
  • 电源的串并联