一、对于数据库的操作
SHOW DATABASES;
CREATE DATABASE test DEFAULT CHARACTER SET utf8;
DROP DATABASE test;
二、数据库表的操作
1、对表的整体操作
USE java;
CREATE TABLE `student`(
`id` INT PRIMARY KEY AUTO_INCREMENT,
`name` CHAR(10),
`age` INT,
`gender` CHAR(1)
);
drop table student;
SHOW TABLES;
DESC student;
ALTER TABLE student ADD COLUMN address CHAR(10);
DESC student;
ALTER TABLE student CHANGE address addr CHAR(20);
DESC student;
ALTER TABLE student DROP COLUMN address;
DESC student;
ALTER TABLE student RENAME TO stu;
2、对表中内容的操作
SELECT * FROM student;
1)插入
INSERT INTO student(`id`,`name`,`age`,`gender`) VALUES (1,'wangwu',23,'男');
INSERT INTO student(id,NAME,age,gender) VALUES(3,'a',21,'nan');
INSERT INTO student VALUES (2,'w',21,'nan','1234');
SELECT * FROM student;
INSERT INTO student(NAME,age,gender) VALUES('小张',23,'男'),('小张1',23,'男');
SELECT * FROM student;
2)修改
UPDATE student SET age = age + 1;
SELECT * FROM student;
UPDATE student SET age = age + 1 WHERE id = 1;
SELECT * FROM student;
3)删除
DELETE FROM student WHERE age = 24;
SELECT * FROM student;
DELETE from student where id = 2;
SELECT * FROM student;
DELETE FROM student;
INSERT INTO student(`name`,`age`,`gender`) VALUES ('wangwu',23,'男');
SELECT * FROM student;
TRUNCATE TABLE student;
SELECT * FROM student;
INSERT INTO student(`name`,`age`,`gender`) VALUES ('wangwu',23,'男');
4)查询
查询数据
INSERT INTO student(id,NAME,age,gender) VALUES (1,'张三',24,'男'),(2,'李四',22,'女'),(3,'王五 ',23,'男'),(4,'赵六',25,'男');
SELECT * FROM student;
SELECT id,NAME,age,gender FROM student;
SELECT id,NAME,age,'java2107' AS '班级' FROM student;
SELECT id,NAME,age AS '年龄','java2107' AS '班级' FROM student;
ALTER TABLE student ADD COLUMN chinese INT;
ALTER TABLE student ADD COLUMN math INT;
SELECT id,NAME,age,gender,(chinese+math) AS '总成绩' FROM student;
INSERT INTO student(NAME,age) VALUES('赵柳',25),('赵柳',24);
SELECT * FROM student;
SELECT DISTINCT NAME FROM student;
SELECT * FROM student WHERE NAME = '赵柳' AND age = 24;
SELECT * FROM student WHERE NAME = '赵柳' OR age = 24;
SELECT * FROM student WHERE age >= 24;
SELECT * FROM student WHERE age BETWEEN 23 AND 25;
SELECT * FROM student WHERE age != 25;
聚合查询
- 聚合查询函数:sum(),avg(),max(),min(),count()
- count()统计的是指定列不包含null的数据个数
SELECT SUM(age) AS '年龄和' FROM student;
SELECT AVG(age) AS '平均年龄' FROM student;
SELECT MAX(age) AS '最大年龄' FROM student;
SELECT MIN(age) AS '最小年龄' FROM student;
SELECT COUNT(id) AS '总人数' FROM student;
SELECT COUNT(gender) AS '总人数' FROM student;
查询排序
- 语法:order by字段,asc/desc默认是asc升序,可以不写
SELECT * FROM student ORDER BY age;
SELECT * FROM student ORDER BY age DESC;
SELECT * FROM student ORDER BY age ASC,id DESC;
分组查询
SELECT gender AS '性别',COUNT(id) AS '人数' FROM student GROUP BY gender;
SELECT gender AS '性别',COUNT(id) AS '人数' FROM student GROUP BY gender ORDER BY COUNT(id);
SELECT gender AS '性别',COUNT(id) AS '人数' FROM student GROUP BY gender HAVING COUNT(id)>=2;