【数据库7】字段相关与联合结果集
2015-11-16 10:38
211 查看
原文链接:http://blog.csdn.net/coder_pig/article/details/43817219
一.字段相关
1.常量字段:
什么是常量字段?答:就是表中并不存在的字段,但是查询出来的结果看上去是实际存在~如
使用下述SQL:
[sql] view
plaincopyprint?
SELECT '小明超市','香洲店',PName,PPrice FROM T_Product
运行SQL:
这里的'小明超市'和'香洲店'就是常量字段!!
2.字段间的计算
字段间还可以进行计算,如计算商品的总价:[sql] view
plaincopyprint?
SELECT PName,FNum,PPrice,PPrice * FNum AS '商品总价' FROM T_Product
运行SQL:
你完全可以把常量字段看成普通字段来使用,也可以写得更复杂点
如,筛选出总价大于5000的商品信息:
[sql] view
plaincopyprint?
SELECT *,PPrice * FNum AS '总价' FROM T_Product WHERE PPrice * FNum > 5000
运行SQL:
3.一个常用的例子:
表中的某项全部+1比如表中所有的商品数量+1
[sql] view
plaincopyprint?
UPDATE T_Product SET FNum = FNum + 1;
SELECT * FROM T_Product
运行SQL:
二.联合结果集
1.什么是联合结果集?
答:就是把多个查询结果集放到一个结果集中显示,举个例子:下面的这个SQL:
[sql] view
plaincopyprint?
SELECT PName,'1.商品' FROM T_Product;
SELECT FName,'2.人员' FROM T_Worker;
运行SQL:
现在我们想把这两个查询的结果集放到一个结果集中!
这个就是联合结果集!
2.如何实现结果集联合:
使用UNION运算符联合即可!,如上述的SQL只需要加上UNION:
[sql] view
plaincopyprint?
SELECT PName,'1.商品' FROM T_Product
UNION
SELECT FName,'2.人员' FROM T_Worker;
运行SQL:
这样就都显示到一个结果集上了,多个的话再加UNION关键字,很简单吧!
3.使用UNION的注意事项:
1)每个结果集必须有相同的列数2)每个结果集的每个对应列的数据类型需要相同或者能转换为同一种数据类型
3)如果多个结果集中存在某个记录的列中的内容都相同的话,即重复,只会保留一条
如果你不想这样的话,这个时候你可以在UNION运算符后使用ALL操作符!
即UNION ALL!
4.联合结果集的使用示例:
联合结果集更多的时候是在制作报表的时候,当我们想把两个没有直接关系的数据显示到同
一张报表中,那么使用UNION可以给我们带来便利!这里写些简单的使用例子!
例子:查询商品单价最高与最低,以及员工中最高薪资与最低薪资:
[sql] view
plaincopyprint?
SELECT '商品最高单价',MAX(PPrice) FROM T_Product
UNION
SELECT '商品最低单价',MIN(PPrice) FROM T_Product
UNION
SELECT '员工最高薪资',MAX(FSalary) FROM T_Worker
UNION
SELECT '员工最低薪资',MIN(FSalary) FROM T_Worker;
运行SQL:
相关文章推荐
- [Hibernate系列—] 1. 下载与试用Hibernate(MySQL与Oracle 配置)
- mysql密码修改
- Redis 详解 (一) StackExchange.Redis Client
- zabbix监控mysql客户端
- Office,Visual Studio,SQL Server,Windows,Windows Server,Exchange Server资源大合集
- Oracle数据类型与.NET中的对应关系(转)
- oracle一次插入多条数据
- mysql Error Code:1175
- 【Mysql】Mysql在大型网站的应用架构演变
- sql:unix下的sql操作
- SQL Server 2008 R2——用CTE进行递归计算求解累计值
- 数据库SQLServer增删改查及基本概念
- Oracle-EDB 修改表结构兼容性
- oracle数据库技巧
- MySQL关键字(保留字)列表
- 使用XtraBackup备份MariaDB
- 【转】mysql行列转换方法总结
- linux下redis安装
- mysql 数据插入优化方法
- navicat for mysql注册码