如何避免DataGridView中的重复数据 [英] How To Avoid Duplicate Data From DataGridView

查看:90
本文介绍了如何避免DataGridView中的重复数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

将DataGridView连接到2个表。使用INNER JOIN和GROUP ..

但.. GROUP是NoT Work ...

请帮助我



我的代码是

Connect DataGridView to the 2 Tables. Using INNER JOIN and GROUP..
But.. GROUP is NoT Work...
Please Help ME

My Code is

Dim strSQL6 As String = "SELECT FeesTransaction.Regno,FeesTransaction.ST_Name, SUM( FeesTransaction.Amount_Paid) As TotalAmountPaid, FeesMaster.FeeAmount,  FeesTransaction.FeeType, FeesTransaction.Class, FeesTransaction.Section FROM  FeesTransaction INNER JOIN  FeesMaster ON FeesTransaction.Regno = FeesMaster.Regno WHERE FeesTransaction.class='" & cboClass.Text & "' and FeesTransaction.section='" & cboSection.Text & "' and FeesTransaction.FeeType='" & cboFeeType.Text & "' GROUP BY FeesTransaction.Regno, FeesTransaction.ST_Name, FeesTransaction.FeeType, FeesTransaction.Class, FeesTransaction.Section, FeesMaster.FeeAmount "





我的DataGridView显示赞这个



My DataGridView Show Like This

RegNo	ST_Name	AmountPaid 	Class	Section
A101	AAAA	450	I	A
A101	AAAA	450	I	A
A102	BBBB	300	I	A
A102 	BBBB	300	I	A





如何避免重复数据..请帮助我..



How To Avoid DUPLICATE DATA.. Please Help Me..

推荐答案

Hello Navas,



您在上面的datagridview模拟中有更少的字段。另外,看起来你没有FeeAmount和FeeType的列(但是你确实有regno,st_name,amountpaid,class和section)。



如果你没有看到数据表,我会认为如果你将缺少的列添加到datagridview中,你会发现这些重复行实际上是唯一的行,你只是看不到由于缺少列而产生的差异。



希望这会有所帮助,



-Bert
Hello Navas,

You have fewer fields in your mock of the datagridview above. Offhand, it looks like you don''t have columns for the FeeAmount and FeeType (however you do have regno, st_name, amountpaid, class, and section).

Without seeing the data tables, I would be that if you add the missing columns to your datagridview, you''ll see that these "duplicate" lines are actually unique lines, you just can''t see the differences due to the missing columns.

Hope this helps,

-Bert


如果你想要的只是Regno,ST_Name和FeeAmount列,并且你想要总计FeeAmount列,那么使用这个查询:



If all you want is the Regno, ST_Name, and FeeAmount columns, and you want the FeeAmount columns totalled, then use this query:

Dim strSQL6 As String = "SELECT  FeesTransaction.Regno, FeesTransaction.ST_Name, sum(FeesMaster.FeeAmount) as FeeAmount  FROM  FeesTransaction INNER JOIN  FeesMaster ON FeesTransaction.Regno = FeesMaster.Regno WHERE FeesTransaction.class=''" & cboClass.Text & "'' and FeesTransaction.section=''" & cboSection.Text & "'' and FeesTransaction.FeeType=''" & cboFeeType.Text & "'' GROUP BY  FeesTransaction.Regno, FeesTransaction.ST_Name"





这假设所有3列已经在您的datagridview上,按照你最后的陈述。



谢谢,



-Bert



This assumes that all 3 columns are already on your datagridview, as per your last statement.

Thanks,

-Bert


SELECT DISTINCT FeesTransaction.Regno,FeesTransaction.ST_Name,sum(FeesMaster.FeeAmount)as FeeAmount FROM FeesTransaction INNER JOIN FeesMaster ON FeesTransaction.Regno = FeesMaster.Regno WHERE FeesTransaction.class =''& cboClass.Text& '和FeesTransaction.section =''& cboSection.Text& '和FeesTransaction.FeeType =''& cboFeeType.Text& ''GROUP BY FeesTransaction.Regno,FeesTransaction.ST_Name



简单的方法,只需在查询中添加distinct
"SELECT DISTINCT FeesTransaction.Regno, FeesTransaction.ST_Name, sum(FeesMaster.FeeAmount) as FeeAmount FROM FeesTransaction INNER JOIN FeesMaster ON FeesTransaction.Regno = FeesMaster.Regno WHERE FeesTransaction.class=''" & cboClass.Text & "'' and FeesTransaction.section=''" & cboSection.Text & "'' and FeesTransaction.FeeType=''" & cboFeeType.Text & "'' GROUP BY FeesTransaction.Regno, FeesTransaction.ST_Name"

Simple way from me, just add "distinct" in your query


这篇关于如何避免DataGridView中的重复数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆