MySQL基础练习01

-- 创建数据库:create database 数据库名称;
CREATE DATABASE db1;

-- 创建数据库,判断不存在,再创建  
-- create database if not exists 数据库名称;
CREATE DATABASE IF NOT EXISTS db1;

-- 查询所有数据库的名称
SHOW DATABASES;

-- 查询某个数据库的字符集:查询某个数据库的创建语句
SHOW CREATE DATABASE db1;

-- 修改数据库的字符集
-- alter database 数据库名称 character set 字符集名称;
ALTER DATABASE db1 CHARACTER SET gbk;

-- 删除数据库
-- drop database 数据库名称;
DROP DATABASE db1;

-- 判断数据库存在,存在再删除
-- drop database if exists 数据库名称;
DROP DATABASE IF EXISTS db1;

-- 使用数据库
USE db2;

-- 查看当前使用的数据库
SELECT DATABASE();

-- 查询某个数据库中的所有的表
SHOW TABLES;
-- 查询某个表的结构
DESC t_teacher;

-- 创建表
CREATE TABLE student(
	id INT,
	NAME VARCHAR(32),
	age INT ,
	score DOUBLE(4,1),
	birthday DATE,
	insert_time TIMESTAMP
);

-- 复制表
-- create table 表名 like 要复制的表名;
CREATE TABLE stu LIKE student;

-- 删除表
-- drop table 表名;
DROP TABLE stu;



-- 修改表名
-- alter table 表名 rename to 新的表名;

-- 修改表的字符集
-- alter table 表名 character set 字符集名称;

-- 添加一列
-- alter table 表名 add 列名 数据类型 约束;

-- 修改列名称以及类型
-- alter table 表名 change 列名 新列名 新数据类型;

-- 修改列名称的数据类型
-- alter table 表名 modify 列名 新数据类型;

-- 删除列
-- alter table 表名 drop 列名;

-- 查询表中的数据
SELECT * FROM student;

-- 添加数据
-- 格式一:insert into 表名(列名1,列名2,...列名n) values(值1,值2,...值n);
INSERT INTO student (id,NAME,age,score,birthday,insert_time) VALUE 
(2,'苍姐',18,59.0,'1822-12-12',NULL);

-- 格式二:
INSERT INTO student VALUE (3,'松岛枫',30,70.0,'1833-12-13',NULL);

-- 格式三 批量插入:
INSERT INTO student(id,NAME,age,score,birthday,insert_time) VALUES 
(4,'一本道',20,100.0,'1899-12-13',NULL),
(5,'麻生希',21,99.0,'1899-12-14',NULL),
(6,'波波',22,98.99,'1899-12-15',NULL);

-- 删除数据
--  delete from 表名 [where 条件]
DELETE FROM student WHERE NAME = 'lu da shi';
-- 删除所有的数据
DELETE FROM student;
-- 先删除表,再创建一个新表(跟原来的表是一模一样的)
TRUNCATE TABLE student;

SELECT * FROM student;

-- 修改数据
-- update 表名 set 列名1 = 值1, 列名2 = 值2,... [where 条件];
-- 如果不添加条件,则修改的时候,表中数据全部修改
UPDATE student SET age = 33;
UPDATE student SET age = 33,score = 100 WHERE id = 6;

/*
 数据准备

*/

CREATE TABLE stu (
	id INT, -- 编号
	NAME VARCHAR(20), -- 姓名
	age INT, -- 年龄
	sex VARCHAR(5), -- 性别
	address VARCHAR(100), -- 地址
	math INT, -- 数学
	english INT -- 英语
);

INSERT INTO stu(id,NAME,age,sex,address,math,english) VALUES 
(1,'马云',55,'男','杭州',66,78),
(2,'马化腾',45,'女','深圳',98,87),
(3,'马景涛',55,'男','香港',56,77),
(4,'柳岩',20,'女','湖南',76,65),
(5,'柳青',20,'男','湖南',86,NULL),
(6,'刘德华',57,'男','香港',99,99),
(7,'马德',22,'女','香港',99,99),
(8,'德玛西亚',18,'男','南京',56,65);

-- 多个字段的查询
-- select 字段名1,字段名2... from 表名;
SELECT NAME,age,sex FROM stu WHERE sex = '女';

-- 计算列
SELECT NAME,math,english, math+IFNULL(english,0) FROM stu;

-- 起别名
SELECT NAME 姓名,math 数学,english 英语, math+IFNULL(english,0) AS 总成绩 FROM stu;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值