MYSQL基础语法

DDL 操作数据库:
一,创建数据库
1,CREATE DATABASE 数据库名; – 直接创建数据库
2,CREATE DATABASE IF NOT EXISTS 数据库名; – 判断是否存在,如果不存在则创建数据库
3,CREATE DATABASE 数据库名 CHARACTER SET 字符集; – 创建数据库并指定字符集为 gbk

二,查看数据库
1,show databases; – 查看所有的数据库
2,show create database db3; – 查看某个数据库的定义信息

三,修改数据库
ALTER DATABASE 数据库名 DEFAULT CHARACTER SET 字符集; – 修改数据库默认的字符集

四,删除数据库
DROP DATABASE 数据库名;

五,使用数据库
1,select database(); – 查看正在使用的数据库
2,use db4; – 改变要使用的数据库

======================

DDL 操作表结构:
一,创建表
create table student (
id int, – 整数
name varchar(20), – 字符串
birthday date – 生日,最后没有逗号
);

二,查看表
1,SHOW TABLES; – 查看某个数据库中的所有表
2,DESC 表名; – 查看表结构
3,SHOW CREATE TABLE 表名; – 查看创建表的 SQL 语句
4,CREATE TABLE 新表名 LIKE 旧表名; – 快速创建一个表结构相同的表
– 创建一个 s1 的表与 student 结构相同
create table s1 like student;
desc s1;

三,删除表
DROP TABLE 表名; – 直接删除表
– 直接删除表 s1 表
drop table s1;
– 判断表是否存在并删除 s1 表
drop table if exists create;
与直接删除的区别
如果表不存在,不删除,存在则删除

四,修改表结构
1,ALTER TABLE 表名 ADD 列名 类型; – 添加表列 ADD
2,ALTER TABLE 表名 MODIFY 列名 新的类型; – 修改列类型 MODIFY
3,ALTER TABLE 表名 CHANGE 旧列名 新列名 类型; – 修改列名 CHANGE
4,ALTER TABLE 表名 DROP 列名; – 删除列 DROP
5,RENAME TABLE 表名 TO 新表名; – 修改表名
6,ALTER TABLE 表名 character set 字符集; – 修改字符集 character set
alter table student2 character set gbk; – 将 student2 表的编码修改成 gbk

=======================================================

DML 操作表中的数据:
一,插入记录
INSERT [INTO] 表名 [字段名] VALUES (字段值)
INSERT INTO 表名 (字段名 1, 字段名 2, 字段名 3…) VALUES (值 1, 值 2, 值 3); – 插入全部字段,所有的字段名都写出来
insert into student (id,name,age,sex) values (1, ‘孙悟空’, 20, ‘男’);
INSERT INTO 表名 VALUES (值 1, 值 2, 值 3…); – 插入全部字段,不写字段名
insert into student values (3, ‘孙悟饭’, 18, ‘男’, ‘龟仙人洞中’);
INSERT INTO 表名 (字段名 1, 字段名 2, …) VALUES (值 1, 值 2, …); – 插入部分数据

二,更新表记录
1,UPDATE 表名 SET 字段名=值; – 修改所有的行,不带条件修改数据
2,UPDATE 表名 SET 字段名=值 WHERE 字段名=值; – 带条件修改数据
– 不带条件修改数据,将所有的性别改成女
update student set sex = ‘女’;
– 带条件修改数据,将 id 号为 2 的学生性别改成男
update student set sex=‘男’ where id=2;
– 一次修改多个列,把 id 为 3 的学生,年龄改成 26 岁,address 改成北京
update student set age=26, address=‘北京’ where id=3;

三,删除表记录
1,DELETE FROM 表名 [WHERE 条件表达式]
DELETE FROM 表名; – 不带条件删除数据
DELETE FROM 表名 WHERE 字段名=值; – 带条件删除数据
2,TRUNCATE TABLE 表名; – 使用 truncate 删除表中所有记录
truncate 和 delete 的区别:truncate 相当于删除表的结构,再创建一张表。
– 带条件删除数据,删除 id 为 1 的记录
delete from student where id=1;
– 不带条件删除数据,删除表中的所有数据
delete from student;

======================================================

DQL 查询表中的数据:
一,简单查询
1,SELECT * FROM 表名; – 使用*表示所有列
2,SELECT 字段名 1, 字段名 2, 字段名 3, … FROM 表名; – 查询指定列的数据,多个列之间以逗号分隔
– 查询 student 表中的 name 和 age 列
select name,age from student;

二,指定列的别名进行查询
1,SELECT 字段名 1 AS 别名, 字段名 2 AS 别名… FROM 表名; – 对列指定别名
2,SELECT 字段名 1 AS 别名, 字段名 2 AS 别名… FROM 表名 AS 表别名; – 对列和表同时指定别名

三,清除重复值
SELECT DISTINCT 字段名 FROM 表名; – 查询指定列并且结果不出现重复数据

四,查询结果参与运算
1,SELECT 列名 1 + 固定值 FROM 表名; – 某列数据和固定值运算
2,SELECT 列名 1 + 列名 2 FROM 表名; – 某列数据和其他列数据参与运算

五,条件查询
SELECT 字段名 FROM 表名 WHERE 条件;
>、<、<=、>=、=、<> <>在 SQL 中表示不等于,在 mysql 中也可以使用!=,没有==
BETWEEN…AND 在一个范围之内,如:between 100 and 200,相当于条件在 100 到 200 之间,包头又包尾
IN(集合) 集合表示多个值,使用逗号分隔
LIKE ‘张%’ 模糊查询
IS NULL 查询某一列为 NULL 的值,注:不能写=NULL
and 或 && 与,SQL 中建议使用前者,后者并不通用。
or 或 || ,或
not 或 ! ,非
1,SELECT 字段名 FROM 表名 WHERE 字段 in (数据 1, 数据 2…); – in 里面的每个数据都会作为一次条件,只要满足条件的就会显示
2,BETWEEN 值 1 AND 值 2
– 查询 english 成绩大于等于 75,且小于等于 90 的学生
select * from student3 where english between 75 and 90;
3,SELECT * FROM 表名 WHERE 字段名 LIKE ‘通配符字符串’; – LIKE 表示模糊查询
4,MySQL 通配符
% 匹配任意多个字符串
_ 匹配一个字符
– 查询姓马的学生
select * from student3 where name like ‘马%’;
select * from student3 where name like ‘马’;
– 查询姓名中包含’德’字的学生
select * from student3 where name like ‘%德%’;
– 查询姓马,且姓名有两个字的学生
select * from student3 where name like ‘马_’;

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值