Oracle SQL 实例教程:创建、查询与修改表

需积分: 9 12 下载量 139 浏览量 更新于2024-09-28 收藏 21KB TXT 举报
"Oracle经典SQL语句大全" 在Oracle数据库管理中,SQL(Structured Query Language)是用于管理和操作数据的标准语言。本资源提供了一系列常用的SQL语句,涵盖了创建表、查询、更新、删除等基本操作。以下是对这些SQL语句的详细解释: 1. 创建表(CREATE TABLE): ```sql CREATE TABLE student_1 ( studID int NOT NULL PRIMARY KEY, studName varchar2(50), password varchar2(10), age int, sex char(10) ); ``` 这个命令创建了一个名为`student_1`的表,包含五个字段:`studID`是主键,不允许为空;`studName`是最多50个字符的字符串;`password`是最多10个字符的字符串;`age`是整数;`sex`是10个字符的字符类型。 2. 查询(SELECT): - 查询所有记录: ```sql SELECT * FROM student_1; ``` - 根据条件查询,例如年龄为20岁的学生姓名: ```sql SELECT studName FROM student_1 WHERE age = 20; ``` 3. 插入数据(INSERT INTO): - 向表中插入新记录: ```sql INSERT INTO student_1 VALUES (1, '', '123456', 20, ''); ``` - 插入多条记录: ```sql INSERT INTO student_1 VALUES (2, '', '123456', 21, 'Ů'); INSERT INTO student_1 VALUES (3, '', '123456', 22, ''); INSERT INTO student_1 VALUES (4, '', '123456', 23, 'Ů'); ``` 4. 修改表结构(ALTER TABLE): - 添加新字段: ```sql ALTER TABLE student_1 ADD (study varchar2(20)); ALTER TABLE student_1 ADD (time_day DATE); ``` 这两个命令分别向`student_1`表中添加了`study`字段(最大长度20的字符串)和`time_day`字段(日期类型)。 5. 插入包含日期的数据: ```sql INSERT INTO student_1 VALUES (6, '', '123456', 20, '', '大一', TO_DATE('2000.1.1', 'yyyy.mm.dd')); ``` 这里展示了如何插入一个包含日期的值,使用`TO_DATE`函数将字符串转换为日期格式。 6. 查询结果去重(DISTINCT): - 去掉`studName`字段重复值: ```sql SELECT DISTINCT TRIM(studName), studID, password, age, sex, study, time_day FROM student_1; ``` - 使用GROUP BY进行分组并去重: ```sql SELECT DISTINCT TRIM(studName), studID, password, age, sex FROM student_1 GROUP BY TRIM(studName), studID, password, age, sex; ``` - 获取每个分组的最大ROWID: ```sql SELECT DISTINCT TRIM(studName), studID, password, age, sex, MAX(rowid) FROM student_1 GROUP BY TRIM(studName), studID, password, age, sex; ``` 7. 删除记录(DELETE FROM): 示例中的`DELETE FROM emp_bak WHERE`语句用于删除`emp_bak`表中满足特定条件的记录。完整的删除语句需要包含适当的条件,如`WHERE age = 20`。 以上是Oracle SQL语句的基础应用,它们在数据库操作中扮演着至关重要的角色。理解并熟练运用这些语句,能够帮助我们高效地管理和维护数据库。在实际工作中,还可以结合索引、视图、触发器、存储过程等更高级的特性来实现更复杂的业务需求。