--精确查找:查询水表编号为30408的业主记录
SELECT * FROM T_OWNERS WHERE WATERMETER = ''
--模糊查询:查询业主名称包含'刘'的业主记录
SELECT * FROM T_OWNERS WHERE NAME LIKE '%刘%'
--AND运算符:查询业主名称包含'刘'的并且门牌号包含5的业主记录
SELECT * FROM T_OWNERS WHERE NAME LIKE '%刘%' AND HOUSENUMBER LIKE '%5%'
--or运算符:查询业主名称包含'刘'的或者门牌号包含5的业主记录
select * from t_owners where name like '%刘%' or housenumber like '%5%'
--and与or混合使用:查询业主名称包含'刘'的或者门牌号包含5的业主记录,并且地址编号为3的记录
select * from t_owners where (name like '%刘%' or housenumber like '%5%') and addressid = 3
--范围查询:查询台账记录中用水字数大于等于10000并且小于等于20000的记录
select * from t_account where usenum>=10000 and usenum<=20000
select * from t_account where usenum between 10000 and 20000
--空值查询:查询t_pricetable 表中maxnum为空的记录
select * from t_pricetable where maxnum is null
--不为空
select * from t_pricetable where maxnum is not null
--去重:查询业主表中的地址ID 不重复显示
select distinct addressid from t_owners --聚合统计
--求和sum:统计2012年所有用户的用水量总和
select sum(usenum) from t_account where year = ''
--求平均数avg:统计2012年所有用水量的平均值
select avg(usenum) from t_account where year = ''
--求最大值max:统计2012年最高用水量
select max(usenum) from t_account where year = ''
select min(usenum) from t_account where year = ''
--统计记录数count:统计业主类型ID为1的业主记录
select count(*) from t_owners where ownertypeid = 1
--分组聚合:按区域分组统计水费合计数
select areaid,sum(money) from t_account group by areaid
--分组后条件查询having:查询水费合计大于16900的区域及水费合计
select areaid,sum(money) from t_account group by areaid having sum(money)>16900 --集合运算
--并集(包含重复记录)
select * from t_owners where id>5
union all
select * from t_owners where id<8
select * from t_owners where id>5
union
select * from t_owners where id<8
--交集
select * from t_owners where id>5
intersect
select * from t_owners where id<8
--差集
select * from t_owners where id>5
minus
select * from t_owners where id<8
select * from t_owners where id<8
minus
select * from t_owners where id>5 --序列
--创建简单序列
create sequence seq_test1;
--查询序列的下一个值
select seq_test1.nextval from dual;
--查询序列的当前值
select seq_test1.currval from dual;
--创建一个有最大值的非循环序列
create sequence seq_test2 maxvalue 5;
select seq_test2.nextval from dual;
--自定义增长值
create sequence seq_test3
increment by 10
start with 10
maxvalue 100
select seq_test3.nextval from dual;
--有最小值的序列
create sequence seq_test4
increment by 10
start with 10
minvalue 5
maxvalue 100
select seq_test4.nextval from dual;
--循环序列
create sequence seq_test5
increment by 10
start with 10
minvalue 10
maxvalue 210
cycle
select seq_test5.nextval from dual; --同义词
--创建私有同义词
create synonym owner for t_owners;
select * from owner
select * from wateruser.t_owners
--创建公有同义词
create public synonym owner2 for t_owners;
select * from owner2

20181114教学sql的更多相关文章

  1. 数据库技术丛书:SQL Server 2016 从入门到实战(视频教学版) PDF

    1:书籍下载方式: SQL Server2016从入门到实战 PDF 下载  链接:https://pan.baidu.com/s/1sWZjdud4RosPyg8sUBaqsQ 密码:8z7w 学习 ...

  2. Spark SQL 用户自定义函数UDF、用户自定义聚合函数UDAF 教程(Java踩坑教学版)

    在Spark中,也支持Hive中的自定义函数.自定义函数大致可以分为三种: UDF(User-Defined-Function),即最基本的自定义函数,类似to_char,to_date等 UDAF( ...

  3. sql注入教学

    新手入坑sql注入,以下是笔记 首先本人存在这么一个mysql数据库 爆库 方法一: 先猜有几列 ,,, 数字依次增加,发现有四列,然后通过database()来爆表名 ,,  方法二: 通过构造一个 ...

  4. 马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)

    马哥linux运维初级+中级+高级 视频教程 教学视频 全套下载(近50G)目录详情:18_02_ssl协议.openssl及创建私有CA18_03_OpenSSH服务及其相关应用09_01_磁盘及文 ...

  5. SQL Saturday 北京将于7月25日举办线下活动,欢迎参加

          地点:北京微软(中国)有限公司[望京利星行],三层308室     报名地址:https://onedrive.live.com/redir?page=survey&resid=f ...

  6. 实例讲解 SQL 注入攻击

    这是一篇讲解SQL注入的实例文章,一步一步跟着作者脚步探索如何注入成功,展现了一次完整的渗透流程,值得一读.翻译水平有限,见谅! 一位客户让我们针对只有他们企业员工和顾客能使用的企业内网进行渗透测试. ...

  7. SQL Server 数据库分离与附加

    一.概述 SQL Server提供了“分离/附加”数据库.“备份/还原”数据库.复制数据库等多种数据库的备份和恢复方法.这里介绍一种学习中常用的“分离/附加”方法,类似于大家熟悉的“文件拷贝”方法,即 ...

  8. SQL 语言 - 数据库系统原理

    SQL 发展历程 从 1970 年美国 IBM 研究中心的 E.F.Codd 发表论文到 1974 年 Boyce 和 Chamberlin 把 SQUARE 语言改为 SEQUEL 语言,到现在的 ...

  9. SQL语句学习手册实例版

    SQL语句学习手册实例版 表操作 例1  对于表的教学管理数据库中的表 STUDENTS ,可以定义如下: CREATE  TABLE  STUDENTS (SNO      NUMERIC (6, ...

随机推荐

  1. Caused by: java.io.FileNotFoundException: velocity.log (No such file or directory)

    Caused by: org.apache.velocity.exception.VelocityException: Error initializing log: Failed to initia ...

  2. js data日期初始化的5种方法 [转]

    创建一个日期对象: 复制代码代码如下: var objDate=new Date([arguments list]);  参数形式有以下5种: 1)new Date("month dd,yy ...

  3. 使用vue-cli脚手架创建项目

    ue-cli 是一个官方发布 vue.js 项目脚手架,使用 vue-cli 可以快速创建 vue 项目. GitHub地址是:https://github.com/vuejs/vue-cli 一.安 ...

  4. 再谈:为什么开源C/C++开源框架极昂贵?

        今天读了一篇文章:<腾讯前员工创业笔记:那些跟钱有关的事儿>(http://tech.163.com/14/0515/08/9S9975C5000915BF.html),摘录两段: ...

  5. 假设在本地搭一个server和mysql数据库环境,假设使用java来訪问数据库

    我们能够使用speedamp来搭一个server环境,能够在http://download.csdn.net/detail/baidu_nod/7630265下载 解压后无需安装直接能够使用.点击Sp ...

  6. re库

    一.Re库的主要功能: 函数 功能 re.search() 在一个字符串中搜索匹配正则表达式的第一个位置,返回match对象 re.match() 在一个字符串的开始位置匹配正则表达式,返回match ...

  7. ELMO模型(Deep contextualized word representation)

    1 概述 word embedding 是现在自然语言处理中最常用的 word representation 的方法,常用的word embedding 是word2vec的方法,然而word2vec ...

  8. 【vue】使用el-table时,实现批量选中效果

    简单demo ①页面: <template> <el-table ref="multipleTable" :data="tableData3" ...

  9. 10 python 初学(Python 的编码解码)

    Python 2 : ASCII Python 3 :Unicode

  10. Kali-linux使用Metasploit基础

    Metasploit是一款开源的安全漏洞检测工具.它可以帮助用户识别安全问题,验证漏洞的缓解措施,并对某些软件进行安全性评估,提供真正的安全风险情报.当用户第一次接触Metasploit渗透测试框架软 ...