mysql的基本语法
一、DDL
数据库的基本操作
CREATE DATABASE jiang1
CREATE DATABASE if not exists jiang1
CREATE DATABASE if not exists jiang2 CHARACTER SET utf8-- 创建数据库
DROP DATABASE jiang
DROP DATABASE IF NOT EXISTS jiang -- 删除数据库
SHOW CREATE DATABASE jiang2 -- 显示自己创建的数据库信息
ALTER DATABASE jiang CHARACTER SET utf8-- 修改数据库字符编码
SHOW DATABASES-- 显示所有的数据库列表
DROP DATABASE jiang2
SHOW DATABASES
数据表的基本操作
-- 创建表
CREATE TABLE users ( uname VARCHAR ( 20 ), age INT, num VARCHAR ( 30 ) );
-- 查看表结构
DESC users
-- 重命名表名
ALTER TABLE users RENAME TO u1;
-- 查看当前表结构
show CREATE TABLE u1
-- 修改字段名
ALTER TABLE u1 CHANGE uname name1 VARCHAR(30)
-- 修改字段类型
ALTER TABLE U1 MODIFY name1 char(2)
-- 添加字段
ALTER TABLE u1 ADD address VARCHAR(20)
-- 删除字段
ALTER TABLE u1 DROP address
-- 练习
-- CREATE TABLE student(
-- id int,
-- name VARCHAR(20),
-- sex char(2),
-- score DOUBLE
-- );
-- ALTER TABLE s_student RENAME t_student
-- ALTER TABLE t_student CHANGE sex gender VARCHAR(2)
-- desc t_student
二、 DML(增加、修改、删除)
ALTER TABLE t_student ADD school_time DATETIME;
INSERT INTO t_student(id,name,gender,score)
VALUES(5,"jaingxing5","n",50.23),
(2,"jaingxing2","n",30.23),
(3,"jaingxing3","n",40.23)
UPDATE t_student set name ="jaingxing51" WHERE id=1
DESC T_STUDENT//查看表结构
三、DQL(查询)
基本查询
SELECT * FROM t_student
1.条件运算
SELECT * from t_student where score>=30;
SELECT * from t_student where score<=30;
SELECT * from t_student where score=30;
SELECT * from t_student where score!=30;
2.四则运算
SELECT id+IFNULL(score,0)-id*20/20 from t_student
3.IFNULL(school_time,0)把null替换
SELECT id,name,IFNULL(school_time,0) as score FROM t_student where school_time is NULL
4.查询null值(is null查询值为null的数据)
SELECT id,name,IFNULL(school_time,0) as score FROM t_student where school_time is NULL
5.&&(and) ||(or)查询
SELECT * FROM t_student where id=1 and name="王三"
SELECT * FROM t_student where id=1 or name="三王"
SELECT * FROM t_student where id=1 && name="王三"
SELECT * FROM t_student where id=1 || name="三王"
6.集合查询(in)
SELECT * FROM t_student where score in (20.23); -- 刚好在20.23的所有数据 可以多个值in (code,code)
SELECT * FROM t_student where score not in (20.23,30.23);-- 不在20.23的所有数据 可以多个值not in (code,code)
7.范围查询(between ...and... )
SELECT * FROM t_student where score BETWEEN 20 and 100;
8.模糊查询
-- 查询王姓同学的所有信息
-- select * from t_score where name="王";-- 错误
-- select * from t_score where name like "王%";
-- 查询姓名中包含‘二’这个字符的同学的所有信息
-- select * from t_score where name like '%二%';
-- 查询某某三同学的所有信息
-- select * from t_score where name like '%三';
9.函数查询