SQL 7 计算字段 - 5. 计算字段的其他用途
2011-01-30 15:58
176 查看
我们不仅能在SELECT语句中使用计算字段,而且同样可以在进行数据过滤、数据删除、及数据更细的时候使用计算字段。
1. 计算处于合理工资范围内的员工
我们规定一个合理的工资范围:上限为年龄的1.8被加上5000晕,下线为年龄的1.5倍加上2000元,介于这两者之间的即为合理工资。我们需要查询所有处于合理工资范围内的员工信息。因此编写如下的SQL语句:
SELECT * FROM T_Employee WHERE FSalary BETWEEN FAge * 1.5 + 2000 and Fage* 1.8 + 5000
这里我们在BETWEEN... AND... 语句中使用了计算表达式。执行完毕我们就能看到下面的执行结果:
+---------+-------+------+---------+-------------+---------------+
| FNumber | FName | FAge | FSalary | FSubCompany | FDepartment |
+---------+-------+------+---------+-------------+---------------+
| DEV002 | Jerry | 28 | 2300.00 | ShenZhen | Development |
| HR001 | Jane | 23 | 4300.00 | Beijing | HumanResource |
| HR002 | Tina | 25 | 3300.00 | Beijing | HumanResource |
| IT002 | NULL | 27 | 2800.00 | ShenZhen | InfoTech |
+---------+-------+------+---------+-------------+---------------+
2. 查询工资年龄指数
我们定义年龄指数为工资除以年龄,需要查询工资年龄指数的最高值和最低值。因此编写如下的SQL语句:
SELECT MAX(FSalary/FAge) AS MAXVALUE, MIN(FSalary/FAge) AS MINVALUE FROM T_Employee
+---------------+--------------+
| MAXVALUE | MINVALUE |
+---------------+--------------+
| 332.000000000 | 82.142857142 |
+---------------+--------------+
3. 年龄全部加1
新的一年到来了,系统需要自动将员工的年龄全部加1。
这种方式在数据量比较大的时候速度是非常慢的,而在UPDATE中使用计算字段则可以非常快速地完成任务。编写下面的SQL语句:
UPDATE T_Employee SET FAge = FAge + 1
这里在SET子句中采用计算字段的方式为FAge字段设定了新值。
执行完毕后再执行SELECT * FROM T_Employee 来查看修改后的数据。
1. 计算处于合理工资范围内的员工
我们规定一个合理的工资范围:上限为年龄的1.8被加上5000晕,下线为年龄的1.5倍加上2000元,介于这两者之间的即为合理工资。我们需要查询所有处于合理工资范围内的员工信息。因此编写如下的SQL语句:
SELECT * FROM T_Employee WHERE FSalary BETWEEN FAge * 1.5 + 2000 and Fage* 1.8 + 5000
这里我们在BETWEEN... AND... 语句中使用了计算表达式。执行完毕我们就能看到下面的执行结果:
+---------+-------+------+---------+-------------+---------------+
| FNumber | FName | FAge | FSalary | FSubCompany | FDepartment |
+---------+-------+------+---------+-------------+---------------+
| DEV002 | Jerry | 28 | 2300.00 | ShenZhen | Development |
| HR001 | Jane | 23 | 4300.00 | Beijing | HumanResource |
| HR002 | Tina | 25 | 3300.00 | Beijing | HumanResource |
| IT002 | NULL | 27 | 2800.00 | ShenZhen | InfoTech |
+---------+-------+------+---------+-------------+---------------+
2. 查询工资年龄指数
我们定义年龄指数为工资除以年龄,需要查询工资年龄指数的最高值和最低值。因此编写如下的SQL语句:
SELECT MAX(FSalary/FAge) AS MAXVALUE, MIN(FSalary/FAge) AS MINVALUE FROM T_Employee
+---------------+--------------+
| MAXVALUE | MINVALUE |
+---------------+--------------+
| 332.000000000 | 82.142857142 |
+---------------+--------------+
3. 年龄全部加1
新的一年到来了,系统需要自动将员工的年龄全部加1。
这种方式在数据量比较大的时候速度是非常慢的,而在UPDATE中使用计算字段则可以非常快速地完成任务。编写下面的SQL语句:
UPDATE T_Employee SET FAge = FAge + 1
这里在SET子句中采用计算字段的方式为FAge字段设定了新值。
执行完毕后再执行SELECT * FROM T_Employee 来查看修改后的数据。
相关文章推荐
- 认真CS丨属性和关联字段(后备字段/后备存储)、属性执行其他计算
- SQL的计算字段(非表中的自然字段)
- [SQL]根据刚刚插入数据的 ID 向另外一张表插入数据(插入的其他字段数据需要对字符串进行分析)
- sql取记录时有几个字段相同其他字段不同,但只取一条记录的写法
- sql 相同记录只取一条(可以取同一行记录的其他字段)
- 用SQL语句怎么计算一个表里的字段 同时含有中英文的字数
- 将sql某字段一部分内容更改成其他内容
- SQL取某个字段最大(小)数值及其相应行的其他字段值的句语
- sql中取身份证字段自动计算年龄
- ABAP–如何在’REUSE_ALV_GRID_DISPLAY’使用自定义F4帮助,返回多个字段以及计算修改其他字段
- SQL 7 计算字段 - 概述
- 搜集论坛SQL问题集合.仅供自己和有兴趣的朋友参考。不做其他用途
- 实际——如何给SQL查询添加合计行(sqlserver2008。但是db2的case when 语句end后不能添加其他字段)
- sql 字段分割 物流费计算
- 第5天-sql计算字段的创建与基础函数的使用
- sql 字段先计算后再拿比对的字段进行比对 效率提升100倍
- SQL 7 计算字段 - 1. 常量字段
- SQL 7 计算字段 - 4. 字符串的拼接