DML和DQL语句
1.新增
– INSERT INTO 表名 (字段名,字段名,… 字段名)values/value(值,值,… 值)
– 日期 使用字符串的形式进行书写日期格式(yyyy-MM-dd HH-dd)
1.全字段的输入
(1)方式一
INSERT INTO student (sid,sname,birthday,ssex,classid) VALUES(9,‘张三’,‘2002-9-23’,‘男’,1);
(2)方式二 1.NULL 2.DEFAULT 等同的默认自增
INSERT INTO student VALUES(NULL,‘张四’,‘2002-9-23’,‘男’,1);
INSERT INTO student VALUES(DEFAULT,‘张四’,‘2002-9-23’,‘男’,1);
2.部分字段插入
INSERT INTO student(sname,ssex) values(‘杨同学’,‘男’)
ALTER TABLE student MODIFY ssex VARCHAR(10) NOT NULL DEFAULT ‘保密’
INSERT INTO student(sname,ssex) values(‘杨同学’,DEFAULT)
3.一次性添加多条数据
(1)方式一
– insert into 表名 (字段名…) VALUES(值…),(值…),(值…)
INSERT INTO student(sname,ssex) values(‘杨同学’,DEFAULT),('x同
学’,DEFAULT)
(2)方式二
INSERT INTO 新表名(插入的字段1,插入的字段2,插入的字段3,…)
SELECT 对应的字段1,对应的字段2 , 对应的字段3 FROM 已有原表;
(3)方式三
– CREATE TABLE SELECT
– 被插入表不能存在
– CREATE TABLE 新表
– SELECT 字段1,字段2 ,字段3 , FROM 已有表
2.修改
1.-- where 子句条件
– 判断成立该数据的父句执行,判断不成立该数据父句不执行
UPDATE 表名 set 字段名=值,字段名=值,…,WHERE 表名.字段名=?
UPDATE student SET birthday=‘2002-7-11’ WHERE student.Sname=‘X同学’
2.-- 条件跟新
– UPDATE student SET birthday=‘2002-7-11’ WHERE classid >=30 and
classid<=90;
3.删除
1.-- delete from 表名 【where 子句】
– delete from newstu
2.-- 清空表、截断表
– TRUNCATE 表名
TRUNCATE class_copy1
– DELETE 只删数据
– TRUNCATE 不仅把数据删掉,还删掉了索引
– drop 不仅把数据删掉
四、DQL
1.概要
–所有的查询都会得到一张虚拟表,虚拟表在内存里
1.-- 从表中获取数据
– SELECT 字段名,字段名,… FROM 表名
– SELECT 部分字段… FROM 表名
– 全字段查询
– SELECT 字段1,字段2,… FROM 表名
– SELECT * FROM 表名(不推荐使用,不利于sql优化)
2.-- 字段名起别名
– SELECT sname as ‘别名的名字’ FROM 表名
– 可省略as和单引号
3.-- 添加字段
– SELECT sname, ‘新列的名字’ 列名名字 FROM 表名
4.-- DISTINCT 去重
– SELECT DISTINCT 字段名 from 表名;
5.-- 带条件的查询 【where 子句】
– SELECT * FROM 表名 WHERE 条件;
– 查找一班的女同学
SELECT sname FROM student WHERE ssex=‘女’ and classid=1
– 查询年龄>1990年1月1号的同学
SELECT sname FROM student WHERE birthday<‘1990-1-1’
6.-- in 在特定的范围
– SELECT * from WHERE sid in (3,5,7,9);
7.-- LIKE 模糊查询
– 模糊符号
– % 任意多的任意字符,0也算
– _ 表示一个任意字符
8.-- NULL、 IS 是什么
– SELECT * FROM student WHERE Sname IS NULL
– SELECT * FROM student WHERE Sname IS NOT NULL
9.-- 聚合函数
– 把多个值变为一个值 有count()统计个数 max() min() sum() avg()
– cout 任何类型,不能为null
– SELECT count(字段\常量*) FROM 表名
– SELECT COUNT(name) FROM student; – 非主键,不统计null
– 含义相同
标签:数据库,表名,详解,字段名,student,MySQL,.--,WHERE,SELECT From: https://blog.csdn.net/qq_67028830/article/details/140780056