首页 理论教育 使用SELECTDISTINCT消除重复记录的查询

使用SELECTDISTINCT消除重复记录的查询

时间:2023-11-02 理论教育 版权反馈
【摘要】:图5-13不消除重复记录的查询从图5-13我们发现,有个客户已经提交过订单,即“1006”,但是输出却是2行记录。图5-14使用DISTINCT谓词消除重复记录的查询从图5-14可以看出,使用SELECT DISTINCT针对某个字段查询出来的记录结果是唯一的。需要查询电子商城购物系统的orders(订单表)表中前两条记录的信息,如示例代码5-22,执行结果如图5-15所示。图5-15查询前2条记录

使用SELECTDISTINCT消除重复记录的查询

1.消除重复值的查询

我们经常需要作消除重复值的查询,比如基金交易系统管理员需要知道,当天只发生了哪几种交易,由于基金交易种类一般有十几种之多,而每天并不是每种交易都发生,而有些交易种类的交易经常发生,且记录量很大,所以需要查询当天有哪些种类的交易发生,这时需要从交易流水表中对交易种类字段作消除重复值查询,否则,对统计有哪几种交易发生了带来很大的麻烦,甚至无法统计。在现实生活中类似例子很多,我们就不再一一举例。

假如,需要查询电子商城购物系统的orders(订单表)中已经有哪些客户提交了订单,对CusID(客户代码)进行查询,如示例代码5-20,执行结果如图5-13所示。

图5-13 不消除重复记录的查询

从图5-13我们发现,有个客户已经提交过订单,即“1006”,但是输出却是2行记录。如果有上百万行数据,需要统计有哪些客户提交过订单,用这种方法统计,显然是个难题,那该怎么办呢?接下来就要讲解如何消除重复记录的查询。消除重复记录,可以使用SQL语句的SELECT DISTINCT来实现。

使用消除重复记录查询重新完成上述查询。如示例代码5-21,执行结果如图5-14所示。

(www.xing528.com)

图5-14 使用DISTINCT谓词消除重复记录的查询

从图5-14可以看出,使用SELECT DISTINCT针对某个字段查询出来的记录结果是唯一的。

2.TOP n查询

通过SELECT TOP n语句可以返回表中前n条数的记录。例如需要查看数据库表的前n条记录信息,就使用SELECT TOP n语句来完成。

需要查询电子商城购物系统的orders(订单表)表中前两条记录的信息,如示例代码5-22,执行结果如图5-15所示。

图5-15 查询前2条记录

免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。

我要反馈