(三)数据库的查询与视图

本文详细介绍了Oracle数据库的查询操作,包括SELECT语句的使用、连接类型、统计函数、GROUP BY和HAVING子句、ORDER BY和UNION子句。此外,还探讨了数据库视图的概念、优点及创建视图的语法,强调了可更新视图的条件。最后,提到了在查询中使用替换变量以及DEFINE和ACCEPT命令的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

以Oracle为例

一、数据库的查询

SELECT <>                	  				/*指定要选择的列及其限定*/
	FROM  <表或视图>                			/*FROM子句,指定表或视图*/
	[ WHERE  <条件表达式> ]         			/*WHERE子句,指定查询条件*/
	[ GROUP BY <分组表达式> ]   				/*GROUP BY子句,指定分组表达式*/
	[ HAVING <分组条件表达式> ]          		/*HAVING子句,指定分组统计条件*/
	[ ORDER BY <排序表达式> [ ASC | DESC ]] 		/*ORDER子句,指定排序表达式和顺序*/


选择表中的列组成结果表,语法格式为:
SELECT [ ALL | DISTINCT ] <列名列表>
其中<列名列表>指出了结果的形式,其主要格式为:
{ * /1、选择当前表或视图的所有列/
| { <表名> | <视图> } . * /2、选择指定的表或视图的所有列/
| { <列名> | <表达式> }
[ [ AS ] <列别名> ] /3、选择指定的列/
| <列标题> = <列名表达式> /4、选择指定列并更改列标题/
} [ , … n ]

/*1、别名*/
SELECT 学号 AS num, 姓名 AS name, 总学分 AS score
	FROM XSB
	WHERE 专业= '计算机';
SELECT 学号 num, 姓名 name, 总学分 score/*也可以省略AS关键字*/
	FROM XSB
	WHERE 专业='计算机';

/*2、表达式*/
SELECT 产品名称,  价格* 库存量 AS 产品总值
	FROM CP;

/*3、消除结果集中的重复行*/
SELECT DISTINCT 专业 AS 专业,总学分 AS 总学分
	FROM XSB;


WHERE <条件表达式>
其中,<条件表达式>为查询条件,格式为:
<条件表达式>::=
{ [ NOT ] <判定运算> | (<条件表达式> ) }
[ { AND | OR } [ NOT ] { <判定运算> | (<条件表达式>) } ]
} [ ,…n ]
其中,<判定运算>的结果为TRUE、FALSE或UNKNOWN,经常用到的格式为:
<判定运算>::=
{ <表达式1> { = | < | <= | > | >= | <> | != } <表达式2> /1、比较运算/
| <字符串表达式1> [ NOT ] LIKE <字符串表达式2> [ ESCAPE ‘<转义字符>’ ]
/2、字符串模式匹配/
| <表达式> [ NOT ] BETWEEN <表达式1> AND <表达式2> /3、指定范围/
| <表达式> IS [ NOT ] NULL /4、是否空值判断/
| <表达式> [ NOT ] IN ( <子查询> | <表达式> [,…n] ) /5、IN子句/
| EXIST ( <子查询> ) /EXIST子查询/
}

/*1、表达式比较*/
SELECT *
	FROM CP
	WHERE 库存量>500;
SELECT *
	FROM XSB
	WHERE 专业='通信工程' AND 总学分>=44
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值