继上一篇创建表的基础上,进行表的简单查询:
---------简单查询
--查询水表编号为30408的业主记录
select * from t_Owners where watermeter = '30408'
--查询业主名称包含“刘”的业主记录
select * from T_OWNERS where name like '%刘%'
--查询业主名称包含‘刘’的且门牌号包含‘5’的业主记录
select * from T_OWNERS where name like '%刘%' and housenumber like '%5%'
--查询业主名称包含“刘”的或者门牌号包含“5”的业主记录
select * from T_OWNERS where name like '%刘%' or housenumber like '%5%'
--查询业主名称包含“刘”的或者门牌号包含 5 的业主记录,并且地址编号为 3 的记录
select * from T_OWNERS
where (name like '%刘%' or housenumber like '%5%')
and address=3
继上一篇创建表的基础上,进行表的简单查询:
---------简单查询
--查询水表编号为30408的业主记录
select * from t_Owners where watermeter = '30408'
--查询业主名称包含“刘”的业主记录
select * from T_OWNERS where name like '%刘%'
--查询业主名称包含‘刘’的且门牌号包含‘5’的业主记录
select * from T_OWNERS where name like '%刘%' and housenumber like '%5%'
--查询业主名称包含“刘”的或者门牌号包含“5”的业主记录
select * from T_OWNERS where name like '%刘%' or housenumber like '%5%'
--查询业主名称包含“刘”的或者门牌号包含 5 的业主记录,并且地址编号为 3 的记录
select * from T_OWNERS
where (name like '%刘%' or housenumber like '%5%')
and address=3
查询台账记录中用水字数大于等于 10000,并且小于等于 20000 的记录
--我们可以用>= 和<=来实现
select * from T_ACCOUNT
where usernum >= 10000 and usernum <= 20000
--用between。。。and实现
select * from T_ACCOUNT where usernum between 10000 and 20000
--查询 T_PRICETABLE 表中 MAXNUM 为空的记录
select * from t_Pricetable where maxnum is null
--查询 T_PRICETABLE 表中 MAXNUM 不为空的记录
select * from T_pricetable where maxnum is not null
/*去掉重复记录*/
--查询业主表中的地址 ID,不重复显示
select distinct address from T_owners
---排序查询
--对 T_ACCOUNT 表按使用量进行升序排序 默认是升序
select * from T_account order by usernum
--对 T_ACCOUNT 表按使用量进行降序排序
select * from T_account order by usernum desc
--基于伪列的查询
select rowid , t.* from T_ACCOUNT t
select rownum ,t.* from T_ACCOUNT t
--聚合函数
--求和 统计 2012 年所有用户的用水量总和
select sum(usernum) from T_ACCOUNT where year = 2012
--求平均 统计 2012 年所有用水量(字数)的平均值
select avg(usernum) from T_ACCOUNT where year = '2012'
--求最大值 统计 2012 年最高用水量(字数)
select max(usernum) from T_AcCOUNT where year = '2012'
--求最小值 统计 2012 年最低用水量(字数)
select min(usernum) from T_ACCOUNT where year = '2012'
--统计记录个数 统计业主类型 ID 为 1 的业主数量
select count(*) from T_OWNERS where ownertypeid = 1
--分组聚合 按区域分组统计水费合计数
select areaid,sum(money) f
select * from T_ACCOUNT
where usernum >= 10000 and usernum <= 20000
--用between。。。and实现
select * from T_ACCOUNT where usernum between 10000 and 20000
--查询 T_PRICETABLE 表中 MAXNUM 为空的记录
select * from t_Pricetable where maxnum is null
--查询 T_PRICETABLE 表中 MAXNUM 不为空的记录
select * from T_pricetable where maxnum is not null
/*去掉重复记录*/
--查询业主表中的地址 ID,不重复显示
select distinct address from T_owners
---排序查询
--对 T_ACCOUNT 表按使用量进行升序排序 默认是升序
select * from T_account order by usernum
--对 T_ACCOUNT 表按使用量进行降序排序
select * from T_account order by usernum desc
--基于伪列的查询
select rowid , t.* from T_ACCOUNT t
select rownum ,t.* from T_ACCOUNT t
--聚合函数
--求和 统计 2012 年所有用户的用水量总和
select sum(usernum) from T_ACCOUNT where year = 2012
--求平均 统计 2012 年所有用水量(字数)的平均值
select avg(usernum) from T_ACCOUNT where year = '2012'
--求最大值 统计 2012 年最高用水量(字数)
select max(usernum) from T_AcCOUNT where year = '2012'
--求最小值 统计 2012 年最低用水量(字数)
select min(usernum) from T_ACCOUNT where year = '2012'
--统计记录个数 统计业主类型 ID 为 1 的业主数量
select count(*) from T_OWNERS where ownertypeid = 1
--分组聚合 按区域分组统计水费合计数
select areaid,sum(money) f