【MySQL】:表操作语法大全

表内容的操作

  • 增删改查
    CRUD (create、retrieve、update、delete)

新增

基本语法

  • 语法为:
sql 复制代码
insert into 表名 values (值,值,值...);
  • 这里的列数和类型,要和表结构匹配
  • 插入中文的话,要确保数据库创建的时候要设置字符集为 utf8 (charset )

隐式类型转换

  • 上述这样就是"隐式类型转换"

类型系统

  1. 比较支持隐式类型转换,称为"弱类型系统"(Java)

  2. 不太支持隐式类型转换,称为"强类型系统"(C 语言、mysql)
    动静态类型

  3. 动态类型:程序运行中,变量类型可以改变
    优势:非常灵活,表达能力更强
    缺点:程序运行前,难以做丰富的检查

  4. 静态类型:程序运行中,变量类型不能改变
    优缺点:与动态相反

指定插入

1.指定列插入

  • 语法为:
sql 复制代码
insert into 表名(列名1,列名2...) value(值1,值2...);

2.多行插入

  • 一次插入多行------>高效,快速,低成本
  • 语法为:
sql 复制代码
insert into 表名 value(),(),();

3.时间插入

  • 手动插入时间

  • 自动插入时间now()

查询

一、全列查询

  • 语法为:
sql 复制代码
select * from 表名;
  • * 称为通配符("赖子"),可以指代所有的类
  • 数据多的时候慎重使用 select * !!!

二、指定列查询

  • 语法为:
sql 复制代码
select 列名1,列名2... from 表名;

三、指定表达式

  • 时列之间进行加减乘除运算
  • 因为数据库查询的是"临时表",所以本体上的数据并没有变化

四、带别名的查询

  • 给表达式取名字
  • 语法为:
sql 复制代码
select 表达式 as 别名 from 表名; //as 可以省略
  • 这也是只针对临时表进行修改,不会影响到表的本体

五、去重查询

  • 语法为:
sql 复制代码
select distinct 别名 from 表名;`
  • 去掉重复出现指定数据的行
  • 也是对临时表进行操作,不会影响到表的本体数据

六、排序查询

  • 顺序排序语法为:
sql 复制代码
select 列名 from 表名 order by 表名;
  • 倒序排序语法为:
sql 复制代码
select 列名 from 表名 order by 表名 desc; //descend
  • 多列排序(若第一列相同,就再排列第二列...)语法为:
sql 复制代码
select 列名 from 表名 order by 表1, 表2, ...

七、条件查询

  • 语法为:
sql 复制代码
select 列名 from 表名 where 条件;

1.一列比较

  • 语法为:
sql 复制代码
select * from exam where math<30;

2 . 多列比较:

  • 语法为:
sql 复制代码
select * from exam where math<english;

3 . and / or 的用法

  • 若表达式很复杂,可以加 ( )

4 . between and 的用法

  • 前闭后开 ( , ]

5 . in 的用法

  • 离散

6.like 的用法

"%"
  • 匹配多个字符
  • '孙'在前面;孙%
  • '孙'在后面:%孙
  • 含'孙':%孙%

"_ "
  • 严格匹配一个字符,一个 _ 就占一个位

7.null 的查询

  • 不要用 = 直接语 null 进行比较,要用 <=>

8.分页查询

  • 限制依次查询多少记录
  • 语法为:
sql 复制代码
select 列名 from 表名 limit N;
  • offset,从下标为几的记录开始算


修改

这是真正在改写硬盘里面的数据,是"持久有效的"


  • 语法为:
sql 复制代码
updata 表名 set 列名=值, 列名=值...;
  • where / order by / limit 等等均可以直接加在后面

删除

  • 直接对硬盘里面的数据进行操作
  • 语法为:
sql 复制代码
delete from 表名 where 条件/order by/limit;
  • 符合条件的有多少删多少,不写条件就是 全删,但 空表 还在
  • drop 是连表带数据一起删

相关推荐
鹿角片ljp1 分钟前
动态SQL实现模糊查询
数据库·sql·oracle
晓风残月淡1 分钟前
mysql备份恢复工具Percona XtraBackup使用教程
数据库·mysql
DomDanrtsey4 分钟前
oracle所有表中文与字段最大长度检测
数据库·oracle
Z...........8 分钟前
数据库表设计
数据库
tudficdew13 分钟前
使用Python操作文件和目录(os, pathlib, shutil)
jvm·数据库·python
浒畔居14 分钟前
工具、测试与部署
jvm·数据库·python
云和数据.ChenGuang15 分钟前
python对接mysql和模型类的故障
数据库·python·mysql·oracle·conda·virtualenv
2301_8223827617 分钟前
开发一个简单的Python计算器
jvm·数据库·python
2501_9209992721 分钟前
Django全栈开发入门:构建一个博客系统
jvm·数据库·python
_F_y25 分钟前
MySQL用户管理
android·mysql·adb