5.select
1.from
2.where不允许使用统计函数
3.group BY 分组前的数据筛选
4.having 分组后的过滤条件,允许使用统计函数
6.order by 排序(升序或者是降序)
统计查询在没有group by的时候不能加任何的列
group by里有的东西select里只能少不能多
分组的目的:消除重复列,让重复的放到一起。
5.select
1.from
2.where不允许使用统计函数
3.group BY 分组前的数据筛选
4.having 分组后的过滤条件,允许使用统计函数
6.order by 排序(升序或者是降序)
统计查询在没有group by的时候不能加任何的列
group by里有的东西select里只能少不能多
分组的目的:消除重复列,让重复的放到一起。
注意:
书写多行时,注意写逗号,
2.字符串用的是单引号
select add_months(sysdate,4) from dual;
SELECT ADD_MONTHS(SYSDATE,20)from dual;
MONTHS_BETWEEN(SYSDATE,hirdade) from emp;
SELECT LAST_DAY(SYSDATE) FROM dual;
ORDER BY是在select语句之后执行,
有两种
select * from emp order by 列名称 desc;--降序
或
select * from emp order by 列名称 asc;——升序(默认的)
限定查询
select from where
3 1 2
字符串用单引号
show user;
查询的是scott或是sys
select * from tab;
查询的是一个用户下的数据表
desc 数据表名称————查的是表的结构(例如dept表中有deptno.....)
col ename for A10——让ename列的长度变为10
简单查询
select form——先执行的是from在执行的是select语句
书写规范——先摆出select和from,在写表名称,最后写查的内容
DISTINCT消除重复数据,多个列都一样才消除
1 clerk
2 clerk
这就不会消除
别名——不止表名称可以用,列名称也可以。同时尽量别用中文
show user;
查询的是scott或是sys
select * from tab;
查询的是一个用户下的数据表
desc 数据表名称————查的是表的结构(例如dept表中有deptno.....)
col ename for A10——让ename列的长度变为10
SQL指的是结构化查询语言。在世界上80年代的时候基本上存在有80多种数据库了,每一种数据库都有自己的一套操作命令。
SELECT FROM WHERE GROUP BY HAVING ORDER BY INSERT UPDATE DELETE CREATE DROP ALTER GRANT REOVKE
SCOTT 用户表的结构(重点,背)
scott 用户一共有四张数据表
SELECT * FROM tab;
DESC 表名称
ALTER
后缀为".sql"
在实际工作中,一般不使用修改表结构,因为之前就设计好的
不能批量删除数据表
TRUNCATET
数据字典
RENAME ...TO...
DELETE FROM 表名称 WHERE
危险操作
逻辑删除和逻辑删除
确定要使用的数据表
确定已知的关联字段
pointbase
Scott,Oracle,BEA
SQL 三种类型:
.DML (数据操作语言)数据库的查询与更新操作
.DDL (数据定义语言)数据对象的操作
.DCL ( 数据控制语言 )
查看一个用户下所有的数据表
SELECT * FROM tab;
收缩字节
COL “列名” FOR A10(保留10)
查询一个表结构
DESC
(3个字符一个中文)
格式化指令:
SET LINESIZE 长度;//设置每行显示
SET PAGESIZE 长度; //设置每页显示
打开记事本
ed XX.sql
如果要执行sql脚本,使用“@文件名”
切换用户
使用sys登陆
CONN sys/change_on_install AS SYSDBA
使用system登陆
conn system/manager
SQLPlus可调用windows命令
HOST ‘windows 命令’
格式化命令:
1. SET LINESIZE
2. SET PAGESIZE
切换用户:
CONN 用户名/密码 【如果要用sys用户后面加AS SYSDBA】