初识mysql语法_初识Mysql之基本简单语法总结

本文详细介绍了MySQL数据库的三大语言:DDL(数据定义语言),包括创建、删除和修改数据库及表的操作;DML(数据操纵语言),涉及插入、更新和删除记录;以及DCL(数据控制语言),用于权限管理和访问控制。通过实例展示了各种语句的使用方法,帮助读者深入理解数据库操作。
摘要由CSDN通过智能技术生成

一、  DDL(data definition language)语句:数据定义语言。

这些语句定义了不同的数据段、数据库、表、列、索引等数据库对象。常用语句关键字:create、drop、alter等。

创建数据库:CREATE DATABASE dbname(eg:     mysql>create database test1;      查看系统中所有的数据库:mysql>show databases;     )

选择数据库:USE dbname                               (eg:     mysql>use test1;          查看test1里所有的数据表:mysql>show tables;      )

删除数据库:drop database dbname;(eg:    mysql>drop database test1;

创建表:CREATE TABLE tablename(column_name_1 column_type_1 constraints,

column_name_1 column_type_1 constraints,

...);                                                         查看表的定义:desc tablename

5.有时需要查看创建表的SQL语句,

42195134557c7482d6d4547a73432170.png

上图中除了可以看到staff表定义以外,还可以看到表的engine(存储引擎)和charset(字符集)等信息。“\G”选项含义是使记录能够按照字段竖向排列,以便更好地显示内容较长的记录。

6.删除表:DROP TABLE tablename                                           (eg:     mysql>drop test;)

7.修改表:

(1)修改表类型,ALTER TABLE tablename MODIFY[COLUMN] column_definition [FIRST|AFTER col_name]

eg:修改表emp的ename字段定义,将varchar(10)改为varcahr(20)

9bf5e71444b52e5b4b3028e33004e54d.png

(2)增加表字段,ALTER TABLE tablename ADD [COLUMN] column_definition [FIRST|AFTER col_name]

eg:在表emp中新增字段age,类型为int(3)

32701ee582743fba6841a456f890e929.png

(3)删除表字段,ALTER TABLE tablename DROP [COLUMN] col_name

eg:将字段age删除

780980e141f05be21e939394f2957225.png

(4)字段改名,ALTER TABLE tablename CHANGE [COLUMN] old_col_name column_definition [FIRST|AFTER col_name]

eg:将age改名为age1,同时修改类型为int(4)

c82206600c5d1185a776f61ca29ed84e.png

(5)修改字段排列顺序,字段增加和修改(ADD|CHANGE|MODIFY)语法中,可选项first|after column_name,可以修改字段在表中的位置。(ADD默认加在最后,CHANGE/MODIFY默认不改变位置)

eg:新增字段birth date(birth的类型)加在ename之后

c929945b3bbe7ea91d564e6177aadfb7.png

eg:修改字段age,放在最前

6ed845751f5db49216811cd27c74e672.png

8.更改表名:ALTER TABLE tablename RENAME [TO] new_tablename

eg:将表enp改名为emp1

8ae8d679d554e1b6fe6a3eadbdb92332.png

二、DML(data manipulation language)语句:数据操纵语句。

用于添加、删除、更新和查询数据库记录,并检查数据完整性。常用语句关键字:insert、delete、update和select等。

1.插入记录:INSERT INTO tablename(filed1,filed2,...,filedn) VALUES(values1,values2,...,valuesn);

eg:

c19918416d77b7f7957f35b42b0dec99.png

也可以不用指定字段名称,但是values后面的顺序应该和字段的排列顺序一致

974deb9ef75310af4bfb154eb2c43343.png

插入多条记录:INSERT INTO tablename(filed1,filed2,...,filedn)

VALUES

(values1,values2,...,valuesn),

(values1,values2,...,valuesn),

(values1,values2,...,valuesn);

2.更新记录:UPDATE tablename SET filed1=value1,filed2=value2,...,filedn=valuen [WHERE CONDITION]

eg:将表emp中ename为'lisa'的薪水(sal)更改为4000:

f87bc333b3a90e164a211d4e16b7a60f.png

(多表更新一般用在根据一个表的字段来动态地更新另一个表的字段)

3.删除记录:DELETE FROM tablename [WHERE CONDITION]

eg:在emp中将ename为'dony'的记录全部删除

d7efbf78bad61e643ba6ec974e595c33.png

在mysql中可以一次删除多个表的数据:DELETE t1,t2,...,tn FROM t1,t2,...,tn [WHERE CONDITION](不管单表还是多表,不加where条件将会把表的所有记录删除)

4.查询记录:SELECT * FROM tablename [WHERE CONDITION]

查询不重复记录关键字distinct

0aaba7bc44e14ba6854190617943c4c2.png

排序和限制,关键字:ORDER BY   语法:SELECT * FROM tablename [WHERE CONDITION] [ORDER BY filed1 [DESC/ASC],filed2 [DESC/ASC],...,filedn [DESC/ASC]]

不写排序顺序关键字默认是升序排列ASC。

◆ 排序后的记录,LIMIT限制显示部分:SELECT ...[LIMIT offset_start,row_count]              其中,offset_start表示记录的起始偏移量,row_count表示显示的行数(limit和order by配合使用做记录的分屏显示)

聚合

SELECT [filed1,filed2,...,filedn] fun_name

FROM tablename

[WHERE where_contition]

[GROUP BY filed1,filed2,...,filedn [WITH ROLLUP]]

[HAVING where_contition]

参数说明:fun_name:表示要做的聚合操作(聚合函数),sum(求和)、count(*)(记录数)、max、min.....

GROUP BY:表示要进行分类聚合的字段,比如要按照部门分类统计员工数量,部门就应该写在group by 后面。

WITH ROLLUP:可选语句,表示是否对分类聚合后的结果进行再汇总。

HAVING关键字表示对分类后的结果在进行条件的过虐。

表连接:左连接,右连接。(复杂,详情后续)

子查询:关键字 in、not in、=、!=、exists、not exists 等  (放后)

记录联合:将两个表的数据按照一定的查询条件查询出来以后,将结果合并到一起显示出来。关键字, union、union all

SELECT * FROM t1

UNION/UNION ALL

SELECT * FROM t2

...

UNION/UNION ALL

SELECT * FROM tn;

UNION ALL 是把结果集直接合并在一起,UNION 是将UNION ALL 后的结果进行一次DISTINCT,去除重复记录后的结果。

三、DCL(data control language)语句:数据控制语句。

用于控制不同数据段直接的许可和访问级别的语句,这些语句定义了数据库、表、字段、用户的访问权限和安全级别。主要语句关键字:grant、revoke等。

主要是DBA用来管理系统中的对象权限时使用,一般开发人员很少使用。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值