数据库数据筛选方案
Posted 捡贝壳的孩子
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据库数据筛选方案相关的知识,希望对你有一定的参考价值。
一 如果只进行单一的筛选,比如只对日期进行筛选,显示一定时期内的数据等等。这样可以直接用数据库语句经行筛选
例子:
string sqlstr=string.fomat("select * from table1 where date between {0} and {1}",datetimepiker1.value.toshortdatestring(),datetimepiker2.value.toshortdatestring());
二、如果经行多项条件筛选,比如有日期,有打折或正价,等等,这样的话最好把数据复制到一个新的表中,然后利用DATASET的属性来进行显示,当然也可以利用数据库中表的特有属性来经行判断(两个自己选一个)。
private void Filter(bool isSpeed) { // DataView dv = new DataView(ds.Tables [0]); DataTable dt=ds .Tables[0];//提取数据 if (isSpeed == true) { // dv.RowFilter = "aveSpeed=‘false‘"; dt.Columns.Remove("aveSpeed"); //dt.Rows["aveSpeed"].ToString () = 60; DataRow[] drArr = dt.Select("AveSpeed>‘60‘");//筛选数据 // DataRow[] drArr= dt.Select("‘++‘<datatime"); //筛选显示 DataTable dtNew = dt.Clone(); for (int i = 0; i < drArr.Length; i++) { dtNew.ImportRow(drArr [i]); } this.dgvRoadReport .DataSource =dtNew ; } else { //dv.RowFilter = "aveSpeed=‘true‘"; } }
利用数据库属性的话(DATAVIEW 自己百度吧):
private void Filter(Boolean isDiscount) { DataView dv = new DataView(ds.Tables[0]); if (isDiscount == true) { dv.RowFilter = "是否特价=‘false‘"; } else { dv.RowFilter = "是否特价=‘true‘"; } // 重新绑定数据源 this.dgvCommodity.DataSource = dv; }
以上是关于数据库数据筛选方案的主要内容,如果未能解决你的问题,请参考以下文章
R语言对dataframe进行行数据筛选(row selection)多种方案:使用R原生方法data.tabledplyr等方案
R语言对dataframe进行行数据筛选(row selection)多种方案:使用R原生方法data.tabledplyr等方案