一款软件性能的优化不仅仅是优化代码、使用各种技术,从数据库的角度去分析,也可以为性能优化作出很大的贡献。
这次做一个订餐的项目,需要将一张卡的所有金钱流动情况汇总到一个GridView里面,所以,简单的需求就是:在不同的表中使用同样的参数,查询出同样的数据。
刚开始接触,可能会想到要写多个sql语句,查询多次数据库,将查询到的DataTable合并到一起。但是这样会进行多次的IO操作,影响性能。从性能和功能两方面考虑,有人推荐给我UNION操作符。
UNION 操作符用于合并两个或多个 SELECT 语句的结果集。默认地,UNION操作符选取不同的值,如果允许重复的值,则可以使用 UNION ALL,这也是UNION与UNION ALL的唯一区别。
select courseNo from course
union all
select courseNo from score
同时,需要注意,UNION 内部的 SELECT语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时,每条 SELECT 语句中的列的顺序必须相同。并且,UNION 结果集中的列名总是等于 UNION中第一个 SELECT 语句中的列名。
select courseNo from course
union all
select score from score
转载请注明原文地址: https://ju.6miu.com/read-1297365.html