--所以数据操作只有四种可能: 1.新增: insert into 表名(字段列表) values(值列表) --一次只能增加一条记录 1.如果没有确定字段列表,那么需要对所有列添加值 2.标识列不能人为插入值,它是系统自动生成的 3.如果字段有默认值或者可以为null,那么在值列表中可以写null/default 4.如果不想为有默认值的字段或者可以为null的字段赋值,也可以在字段列表中不指定这些字段 5.非空字段必须赋值 6.类型需要一致: 1.所有类型的值都可以包含在‘’以内 2.如果没有包含在‘’以内,那么: 1.如果是数值组成的字符串--OK 2.如果是非数值组成的字符串没有包含在‘’以内,就会报错 7.日期值必须包含在‘’以内,否则就得到默认值--1905-7-2 2.修改: update 表 set 字段=新值,字段=新值 where 条件 1.修改的值不能违反表的完整性约束 3.删除 delete from 表名 where 条件 1.一条一条记录进行删除,每一条的删除会记录到日志文件中,效率低 2.标识列的值不会重新从种子值计算 3.会触发 delete触发器 truncate table 表名 --不能添加条件 1.一次性删除整个表的数据,日志文件的写入是最小化的 2.标识列会从种子重新计算 3.不会触发delete触发器 聚合函数: max():必须有参数,但是参数的类型可以是任意的,如果对于数值凡比较大小,如果对于日期,也是比较大小,如果是字符串,就比较A-Z,如果是中文就比较它的拼音A-Z min():与max一样 sum():必须有参数但是参数的类型必须是数值,不能是字符串或者日期 avg():与sum一样 count():与字段无关,与记录有关,所以参数可以是任意的 查询: select(5) 字段列表 from(1)表列表 where(2) 源数据的筛选条件 group by(3) 分组字段列表 having(4) 分组结果集的筛选条件 order by(6)最终结果集的数据重排字段列表 1.between...and:对数值进行区间判断,相当于大于等于 小于等于,它的效率比关系运算符要高 2.in:指定一个具体的值的范围,要求值的类型需要一致 3.模糊查询:对字符串而言 通配符 1.%:代表任意个任意字符 2._:代表一个任意字符 3.[]:它代表具体的值或者范围,范围指定只能是a-z A-Z 0-9 3.[^]:不在指定的范围内,必须在[]中才有这个意义 模糊查询关键字:如果使用了通配符做模糊查询,就必须使用关键字:like /not like 类型转换: cast(源数据 as 目标类型) convert(目标类型,源数据,日期格式)-- 0-15 100-115 union:合并多个结果集: 1.列有数量一定一致 2.列的类型需要一致 3.union会去除重复记录,union all就不会去除,所有效率更高
时间: 2024-10-29 19:10:36