Oracle数据库SQL查询详解:从SELECT到计算字段
需积分: 50 164 浏览量
更新于2024-08-15
收藏 3.47MB PPT 举报
"Oracle数据库Sql语句详解大全中的建表语法和SELECT查询"
在Oracle数据库中,创建表是数据管理的基础操作,通过`CREATE TABLE`语句实现。语句的基本结构如下:
```sql
CREATE TABLE [schema.]table
(column datatype [DEFAULT expr]
[column_constraint],
...
[table_constraint]);
```
这里的`schema`是你想要创建表的模式或用户,`table`是你要创建的表名,`column`是表的列名,`datatype`是列的数据类型,如`VARCHAR2`, `NUMBER`, `DATE`等。`DEFAULT expr`允许你为列设置默认值,`column_constraint`和`table_constraint`则用于定义列级和表级的约束,如非空约束(NOT NULL)、唯一性约束(UNIQUE)、主键约束(PRIMARY KEY)和外键约束(FOREIGN KEY)等。
在进行数据查询时,`SELECT`语句是SQL的核心,用于从数据库中检索信息。其基本语法如下:
```sql
SELECT <列名>
FROM <表名>;
```
例如,`SELECT * FROM s_emp;`将获取`s_emp`表中的所有列和行。`*`是通配符,代表所有列。如果你只想查询特定列,如`dept_id`和`salary`,你可以这样写:
```sql
SELECT dept_id, salary
FROM s_emp;
```
在查询中,可以使用算术表达式来处理数值,例如计算年薪:
```sql
SELECT salary * 12
FROM s_emp;
```
这里,`salary * 12`表示每个员工的年薪。运算符的优先级可以通过括号来调整,如:
```sql
SELECT last_name, salary, 12 * salary + 100
FROM s_emp;
```
这会计算年薪并加上100,而:
```sql
SELECT last_name, salary, 12 * (salary + 100)
FROM s_emp;
```
则是先增加100,然后乘以12,两个表达式的结果会有所不同。
对于空值(NULL),在查询中需要特别处理,因为NULL不能参与大多数算术运算。你可以使用`IS NULL`或`IS NOT NULL`来检查值是否为空。同时,可以使用`AS`关键字为列起别名,使得查询结果更易读,如:
```sql
SELECT column AS alias
FROM table;
```
查询字段的连接(JOIN)允许你从多个表中合并数据,比如内连接(INNER JOIN)、左连接(LEFT JOIN)、右连接(RIGHT JOIN)和全连接(FULL OUTER JOIN)等,这些在复杂的查询中非常有用。
Oracle SQL提供了丰富的功能来创建和查询数据库,涵盖了数据存储、检索、更新和删除等各种操作,是管理和操作数据库的关键工具。通过熟练掌握这些基本语法和概念,你可以高效地处理各种数据需求。
2022-11-15 上传
2022-04-16 上传
2024-10-29 上传
2024-11-02 上传
2024-10-29 上传
2024-10-29 上传
2023-05-27 上传
2024-10-27 上传
杜浩明
- 粉丝: 14
- 资源: 2万+
最新资源
- 火炬连体网络在MNIST的2D嵌入实现示例
- Angular插件增强Application Insights JavaScript SDK功能
- 实时三维重建:InfiniTAM的ros驱动应用
- Spring与Mybatis整合的配置与实践
- Vozy前端技术测试深入体验与模板参考
- React应用实现语音转文字功能介绍
- PHPMailer-6.6.4: PHP邮件收发类库的详细介绍
- Felineboard:为猫主人设计的交互式仪表板
- PGRFileManager:功能强大的开源Ajax文件管理器
- Pytest-Html定制测试报告与源代码封装教程
- Angular开发与部署指南:从创建到测试
- BASIC-BINARY-IPC系统:进程间通信的非阻塞接口
- LTK3D: Common Lisp中的基础3D图形实现
- Timer-Counter-Lister:官方源代码及更新发布
- Galaxia REST API:面向地球问题的解决方案
- Node.js模块:随机动物实例教程与源码解析