diff --git "a/07\351\203\221\347\216\211\347\216\262/\346\225\260\346\215\256\347\232\204\345\242\236\345\210\240\346\224\271\346\237\245\347\254\224\350\256\260.md" "b/07\351\203\221\347\216\211\347\216\262/\346\225\260\346\215\256\347\232\204\345\242\236\345\210\240\346\224\271\346\237\245\347\254\224\350\256\260.md" new file mode 100644 index 0000000000000000000000000000000000000000..abb295f11a90c465ee2d26f0602986e1d582c5de --- /dev/null +++ "b/07\351\203\221\347\216\211\347\216\262/\346\225\260\346\215\256\347\232\204\345\242\236\345\210\240\346\224\271\346\237\245\347\254\224\350\256\260.md" @@ -0,0 +1,98 @@ +# 数据的增删改查笔记 + +### 1、插入数据 + +```sql +--写全所有列名 +insert into 表名(列名1,列名2...列名n)values(值1,值2...值n) +--不写列名,要把每个列名对应的值都写上 +insert into 表名 values (值1,值2...值n) +--写部分列名 +insert into 表名(列名1,列名2)values(值1,值2) +--批量插入数据 +insert into 表名 (列名1,列名2...列名n) +values (数据1,数据2,数据3,...), + (数据1,数据2,数据3,...), + (数据1,数据2,数据3,...), + (数据1,数据2,数据3,...) +注意:列名和值的数量,数据类型,顺序要一一对应 +``` + +### 2、删除数据 + +```SQL +--删除表中部分数据 +delete from 表名 where 列名 =值 +--删除表中所有数据 +truncate table 表名(相当于整张表删除重建) +delete from 表名 +总结: + 1. 当不需要该表时,用 drop; + 2. 当仍要保留该表,但要删除所有记录时,用 truncate; + 3. 当要删除部分记录时,用 delete。 +``` + +### 3、修改数据 + +```SQL +update 表名 set 列名1=更新后的值1,列名2=更新后的值2{where条件可加可不加} +``` + +### 4、查询数据 + +```sql +--1、查询单表的所有数据 +select*from 表名 +--2、查询指定列 +select 列名 from 表名 +--3、查询若干行数据 +a.利用top查询数据前几行 +select top 数量 *from 表名 +b.查询前百分之十的数据 +select top 10 percent *from 表名 +--4、去除重复项 +select distinct 列名 from 表名 +--5、对查询结果进行排序 +select * from 表名 order by 列名 desc(降序)/asc(升序) +--6、给列名设置别名 +a.select 列名 as 别名 from 表名 +b.select 列名 别名 from 表名 +c.select 别名 = 列名 from 表名 +--7、查询between +select * from 表名 where 列名 between 值1 and 值2 +相当于 select *from 表名 where 列名 >值1 and 列名<值2 +select * from 表名 where 列名 > 值1 &&列名 <值2 +--8、查询in +select * from 表名 where 列名 in (值1,值2,值3) +相当于 select * from 表名 where 列名 =值1 or 列名 =值2 or 列名=值3 +``` + +### where条件表达式 + +```sql +1、比较运算符:>,>=,<,<=,<>,!= +2、逻辑运算符:and or not +3、范围运算符:between and,not between and +4、列表运算符:in(值1,值2) not in(值1,值2) +5、空值运算符:is null,not is null +6、空字符串:'' +7、模式匹配运算符:like +tips:%匹配0~n个字符, +-匹配一个任意字符 +``` + +### 模糊查询例子 + +```SQL +1、查询学生信息表(student)中住在桂林市的学生 +select * from student where studentaddress like'%桂林市%' +2、查询学生信息表中姓刘的学生 +select*from student where studentname like'刘%' +3、查询姓名包含天字的学生信息 +select *from student where studentname like '%天%' +4、查询姓刘并且是三个字的姓名 +select* from student where studentname like'刘__' +5、查询电话号码最后一位是7,8,9的学生 +select* from student where studentphone like'%[7,8,9]' +``` +