Oracle——SQL基础
一、SQL语句分为以下三种类型:
DML: Data Manipulation Language 数据操纵语言
DDL: Data Definition Language 数据定义语言
DCL: Data Control Language 数据控制语言
①、DML用于查询与修改数据记录,包括如下SQL语句:
INSERT:添加数据到数据库中
UPDATE:修改数据库中的数据
DELETE:删除数据库中的数据
SELECT:选择(查询)数据
SELECT是SQL语言的基础,最为重要。
②、DDL用于定义数据库的结构,比如创建、修改或删除数据库对象:
CREATE TABLE:创建数据库表
ALTER TABLE:更改表结构、添加、删除、修改列长度
DROP TABLE:删除表
CREATE INDEX:在表上建立索引
DROP INDEX:删除索引
③、DCL用来控制数据库的访问,包括如下SQL语句:
GRANT:授予访问权限
REVOKE:撤销访问权限
COMMIT:提交事务处理
ROLLBACK:事务处理回退
SAVEPOINT:设置保存点
LOCK:对数据库的特定部分进行锁定
二、Oracle 注意事项
1. 对于日期型数据, 做 *, / 运算不合法
2. 包含空值的数学表达式的值都为空值
3. 在SQL中只有别名使用双引号
4. oracle 中连接字符串使用 "||", 而不是 java 中的 "+"
5. 日期和字符只能在单引号中出现.
6. 在 SELECT 子句中使用关键字 ‘DISTINCT’ 删除重复行。
SELECT DISTINCT department_id FROM employees;
三、过滤和排序
- 字符和日期要包含在单引号中。
- 字符大小写敏感,日期格式敏感。
- 默认的日期格式是 DD-MON月-RR。
SELECT last_name, hire_date, department_id FROM employees WHERE hire_date = '7-6月-1994'
①、自定义日期格式
select last_name,hire_date from employees where to_char(hire_date,'yyyy-mm-dd')='1994-06-07'
②、模糊查询
- % 代表零个或多个字符(任意个字符)。
- _ 代表一个字符。
回避特殊符号的:使用转义符。例如:将[%]转为[\%]、[_]转为[\_],然后再加上[ESCAPE ‘\’] 即可。
条件 包含下划线的last_name (转义) where last_name like '%#_%' escape '#' 转义字符(#)可以是任意的,eescape用于声明转义字符。
between and 包含边界
③、使用 ORDER BY 子句排序
- ASC(ascend): 升序
- DESC(descend): 降序
ORDER BY 子句在SELECT语句的结尾。