SELECT子句查询是对基本表或视图中的内容进行查询,并将数据返回显示,数据表中的值是什么,返回的值就是什么。然而在实际应用中,用户经常需要对数据表中数据进行简单的运算后再显示出来。
本实例对STU表的SAGE字段进行算术运算,将所有学生的年龄加1,再将其学号、姓名、年龄和性别输出。本实例执行完成后,在SQL*Plus中查看返回结果,如图1所示。
图1 对数据列进行运算并输出
【实现代码】
【范例解析】
本实例需要对每个学生的年龄加1后显示结果,可以使用SELECT语句来实现,这就需要是对数据列进行算术运算的SELECT查询语句。SELECT子句支持直接在列名上进行算术运算并输出查询结果。
需要读者注意的是,对数据列进行算术运算的SELECT子句并不会改变原基本表或视图中的数据,一旦查询释放,其运算结果也被释放,而不会写入到原表或视图中,数据表中的数据仍然如图2所示。这是因为SELECT语句只是查询语句,而不是数据操作的SQL语句。
图2 原数据表不变
从图1中可看出,返回结果中显示的是经过运算后的列,为了查询后的结果更具有可读性,通常可以为该类查询结果指定通俗易懂的别名。用户可根据显示需要,对表或视图的一个显示字段指定别名,也可对多个显示字段指定,指定格式只需在原字段名即表名后加空格再加别名名称即可,常用语句为:
本实例中将上述SQL代码进行改写,使得显示出来的每个列名具有更好的可读性,则实现代码如下:
可以看出,上述SQL语句不仅指定了经过算术运算后的列的别名,也为数据表中需显示的所有列指定想要的别名,该语句在SQL*Plus中执行后其返回结果如图3所示。
图3 指定列别名
注意:对数据列进行算术运算时,必须要保证该列的数据类型是可运算的,否则将出现错误提示。
985大学 211大学 全国院校对比 专升本