欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

Oracle基础教程:书写简易SQL

程序员文章站 2022-06-11 20:45:32
...

如果屏幕显示的内容串行 是因为默认的显示的行长度是80字节 而选出的内容超出了80字节 可以修正一下SQLgt; set linesize 100如果

SQL语法书写很长,而且SQLPLUS里没有自动补齐,忘记格式时可通过文档获取帮助

官方文档中的SQL语法描述图:
1.关键字和参数


方块是关键字 椭圆是参数

2.可选参数和关键字

Oracle基础教程:书写简易SQL

红色是可选,有多个路径选择,也就是 schema 和点是可选的,FORCE和VALIDATE是可选的或关系

3.循环语法

Oracle基础教程:书写简易SQL

可以使用多个表达式 表达式之间用逗号间隔


4.跨行语法

语法书写顺序用箭头描述 一行不够描述会另起一行

Oracle基础教程:书写简易SQL

5.当语句带有clause(从句)时 会在下方有单独的从句语法

Oracle基础教程:书写简易SQL

整个学习SQL过程是使用SCOTT用户的表来学习的 默认scott是被锁定的 解锁的方法
SQL> conn / as sysdba
SQL> alter user scott account unlock identified by tiger;
通过sys解锁scott用户 并将scott的密码设置成tiger
SQL> conn scott/tiger

在以后的学习过程中 scott的表经常被修改 如果想将scott环境恢复默认 使用系统自带脚本即可

SQL> show user
USER is "SYS"
SQL> @?/rdbms/admin/utlsampl.sql
如果是windows版本则是 @?/rdbms/admin/scott.sql

官方教材中使用的是hr用户 在建立数据库时选中示例模板
也可以通过脚本建立 脚本见下小结

@是加载OS中的SQL保存文件
?是$Oracle_HOME的替代
执行完脚本 会自动退出 重新登录 再对scott解锁即可


select 简易语法构成(之所以说是简易的 因为实际的select语法是很复杂的
这只是一小部分 也是我们最常用的语法结构.)
SELECT {*|DISTINCT column|expression [[alias],...]}
FROM table [[alias],...]
WHERE expression
ORDER BY {column|number} [DESC|ASC];

上述语法中不区分大小写 有大小写只是为了便于描述
实际书写时只有字符串是大小写敏感的,而且要用单引包含起来
描述中的大写为关键字
描述中的小写为表或者选择的列 别名 表达式


一个完整的SQL命令叫语句(statement),每个关键字和后面跟着的选项叫子句(clause)
select 指定查询的列
from 指定查询的表
where 过滤的条件
order by 排序的列
DESC|ASC 排序方法

Oracle基础教程:书写简易SQL