三.资料操作 dml(data manipulation language)
资料定义好之后接下来就是资料的操作。资料的操作不外乎增加资料(insert)、查询资料(query)、更改资料(update)、删除资料(delete)四种模式。
1.增加资料:
insert into table_name(column1,column2...)
values(value1,value2...)
说明:
(1)若没有指定column系统则会按表格内的栏位顺序填入资料。
(2)栏位的资料形态和所填入的资料必须吻合。
(3)table_name也可以是景观view_name.
insert into table_name(column1,column2...)
select columnx,columny...from another table
说明:也可以经过一个子查询(subquery)把别的表格的资料填入。
2.查询资料:
基本查询
select column1,column2...
from table_name
select *
from table_name
where column1 = xxx
[and column2>yyy][or column3< >zzz]
select column1,column2
from table_name
order by column2[desc]
组合查询
组合查询是指所查询的资料来源并不知有单一的表格,而是联合一个以上的表格才能够得到结果的。
select *
from table1,table2
where table1.column1 = table2.column1
整合性查询:
select count(*)
from table_name
where column_name = xxx
select sum(column1)
from table_name
说明:除此之外还有avg()是计算平均、max()、min()计算最大最小的整合性查询。
select column1 avg(column2)
from table_name
group by column1
having avg(column2)>xxx
说明:
(1)group by:以column1为一组计算column2的平均值必须和avg、sum等整合行查询的关键字一起使用。
(2)having:必须和group by 一起使用作为整合性的限制。
复合性查询
select *
from table_name1
where exists(
select *
from table_name2
where conditions)
说明:exists指存在与否
select *
from table_name1
where column1 in(
select column1
from table_name2
where conditions)
其它查询:
select *
from table_name1
where column1 like 'x%'
说明:like必须和后面的'x%'相呼应表示以x为开头的字串
select *
from table_name1
where column1 in('xxx','yyy'...)
说明:in后面接的是一个集合,表示column1存在集合里面
select *
from table_name1
where column1 between xx and yy
3.更改资料:
update table_name
set column1="xxx"
where conditions
4.删除资料:
delete from table_name
where conditions