SQL语句的整理以及总结

char(n) 存放固定长度的字符串,用户指定长度为n。如果没有使用n个长度则会在末尾添加空格。
 varchar(n) 可变长度的字符串,用户指定最大长度n。char的改进版,大多数情况下我们最好使用varchar。
 int 整数类型
 smallint 小整数类型
 numeric(p,d) 定点数,精度由用户指定。这个数有p位数字(包括一个符号位)d位在小数点右边。
 real ,double precision 浮点数和双精度浮点数。
 float(n) 精度至少位n位的浮点数
 特殊关键字
 类型 含义 实例
 primary key 主键 primary key(student_id)
 foreign key references 外键,括号中为外键,references后为外键的表 foreign key(course_id) references Course
 not null 不为空,前面为属性的定义 name varchar(10) not null
 创建/插入/删除/修改
 类型 含义
 create table 创建一张表
 insert into…values 向表中插入一条信息
 delete from 从表中删除一条信息
 update…set…where 在where的位置,更新内容为set的值
 drop table 删除表
 alter table…add 向表中添加某个属性
 alter table…drop 删除某个属性
 truncate 清空内容order by 让查询结果中的信息按照给定的属性排序(默认升序,上小下大)
 desc 在排序后使用,表示采用降序
 asc 在排序后使用,表示采用升序
 between 在where中使用between表示一个数在两个数值之间取值
 not between between的反义词,在两个数之外取值
 union/union all 将连个SQL语句做并运算,并且自动去重,添加all表示不去重
 intersect/intersect all 将两个SQL语句做交运算,并自动去重,添加all表示不去重
 except/except all 将两个SQL语句做差运算,并且自动去重,添加all表示不去重
 left join 左联查,以左表为主,合并符合条件的右表数据,
 当出现多个left join时,联查条件要注意对应关系要唯一,不然联查会出现所有数据;
 is null 在where中使用is null表示这个值是空值
 is not null 在where中使用is not null表示这个值不是空值
 聚集函数运算
 类型 含义
 avg 平均值
 min 最小值
 max 最大值
 sum 总和
 count 计数
 distinct 表示将后面的属性去重
 group by 将在group by上取值相同的信息分在一个组
 having 对group by产生的分组进行筛选,可以使用聚集函数